cngf-pf

continuum model for granular flows with pore-pressure dynamics
git clone git://src.adamsgaard.dk/1d_fd_simple_shear
Log | Files | Refs | README | LICENSE Back to index

arg.h (698B)


      1 /* by 20h */
      2 #ifndef ARG_H
      3 #define ARG_H
      4 
      5 #define USED(x) ((void)(x))
      6 
      7 extern char *argv0;
      8 
      9 #define ARGBEGIN	for(argv0 = *argv, argv++, argc--;\
     10 					argv[0] && argv[0][0] == '-'\
     11 					&& argv[0][1];\
     12 					argc--, argv++) {\
     13 				char _argc;\
     14 				char **_argv;\
     15 				if(argv[0][1] == '-' && argv[0][2] == '\0') {\
     16 					argv++;\
     17 					argc--;\
     18 					break;\
     19 				}\
     20 				int i_;\
     21 				for(i_ = 1, _argv = argv; argv[0][i_];\
     22 						i_++) {\
     23 					if(_argv != argv)\
     24 						break;\
     25 					_argc = argv[0][i_];\
     26 					switch(_argc)
     27 
     28 #define ARGEND			}\
     29 				USED(_argc);\
     30 			}\
     31 			USED(argv);\
     32 			USED(argc);
     33 
     34 #define	EARGF(x)	((argv[1] == NULL)? ((x), abort(), (char *)0) :\
     35 			(argc--, argv++, argv[0]))
     36 
     37 #endif
     38