← Named Argument Download

#include <stdio.h> /* Named function parameters. */ struct range { int from; int to; int step; }; #define range(...) range((struct range){.from=1,.to=10,.step=1, __VA_ARGS__}) void (range)(struct range r) { int i = r.from; for(; i <= r.to; i += r.step) printf("%d ", i); puts(""); } int main() { range(); range(.from=2, .to=4); range(.step=2); return 0; }