|
|
1.1 root 1: /*
2: * argument processing
3: */
4: #define ARGBEGIN for((argv0? 0: (argv0=*argv)),argv++,argc--;\
5: argv[0] && argv[0][0]=='-' && argv[0][1];\
6: argc--, argv++) {\
7: char *_args, *_argt, _argc;\
8: _args = &argv[0][1];\
9: if(_args[0]=='-' && _args[1]==0){\
10: argc--; argv++; break;\
11: }\
12: while(*_args) switch(_argc=*_args++)
13: #define ARGEND }
14: #define ARGF() (_argt=_args, _args="",\
15: (*_argt? _argt: argv[1]? (argc--, *++argv): 0))
16: #define ARGC() _argc
17: extern char *argv0;
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.