|
|
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.