argc&argv
Argument passed to main()
int argc;argc is an abbreviation for "argument count". It is the traditional name for the first argument to a C program's main routine. By convention, it holds the number of arguments that are passed to main in the argument vector argv. Because argv[0] is always the name of the command, the value of argc is always one greater than the number of command-line arguments that the user enters.
char *argv[];argv is an abbreviation for ``argument vector''. It is the traditional name for a pointer to an array of string pointers passed to a C program's main function; by convention, it is the second argument passed to main. By convention, argv[0] always points to the name of the command itself.
Example of argument reading codes
if( argc == 1 ) { printf( "Usage: %s\n -data\n" " -info \n" " [-maxSizeDiff ]\n" " [-maxPosDiff ]\n" " [-sf ]\n" " [-ni]\n" " [-nos ]\n" " [-rs ]\n" " [-w ]\n" " [-h ]\n", argv[0], maxSizeDiff, maxPosDiff, scale_factor, nos, rocsize, width, height ); return 0; } for( i = 1; i < argc; i++ ) { if( !strcmp( argv[i], "-data" ) ) { classifierdir = argv[++i]; } else if( !strcmp( argv[i], "-info" ) ) { infoname = argv[++i]; } else if( !strcmp( argv[i], "-maxSizeDiff" ) ) { maxSizeDiff = (float) atof( argv[++i] ); } else if( !strcmp( argv[i], "-maxPosDiff" ) ) { maxPosDiff = (float) atof( argv[++i] ); } else if( !strcmp( argv[i], "-sf" ) ) { scale_factor = atof( argv[++i] ); } else if( !strcmp( argv[i], "-ni" ) ) { saveDetected = 0; } else if( !strcmp( argv[i], "-nos" ) ) { nos = atoi( argv[++i] ); } else if( !strcmp( argv[i], "-rs" ) ) { rocsize = atoi( argv[++i] ); } else if( !strcmp( argv[i], "-w" ) ) { width = atoi( argv[++i] ); } else if( !strcmp( argv[i], "-h" ) ) { height = atoi( argv[++i] ); } }
Labels: C/Cplusplus
0 Comments:
Post a Comment
Subscribe to Post Comments [Atom]
<< Home