char param, *_arg; #define ARGS for(++argv, --argc;\ argv[0]\ && argv[0][0] == '-'\ && argv[0][1]\ && !(argv[0][1]=='-' && argv[0][2]=='\0');\ ++argv, --argc)\ for(++argv[0]; argv[0][0];)\ switch(param=argv[0]++[0]) #define ARG(ifnot) (argv[0][0] ? 0 :\ argv[1] ? ++argv, --argc :\ (ifnot),\ _arg=argv[0], argv[0]="", _arg)