如果它们是标准main
类型的参数,那么这就是您所需要的。
argc
必须是参数的计数,包括“程序名称”(引用是因为此值设置为取决于实现)。
argv
应该是一个字符指针数组,指定:
- “程序名称”。
- 每个论点。
- 一个 NULL 终止符。
所以,对于命令行
-s 1 -t 2 -c 1 -g 0.5 -v 5 input_file_name.dat model_file_name.dat
你将会拥有:
const char *myArgV[] = {
"progname",
"-s", "1",
"-t", "2",
"-c", "1",
"-g", "0.5",
"-v", "5",
"input_file_name.dat",
"model_file_name.dat",
NULL };
int myArgC = sizeof (argv) / sizeof (argv[0]) - 1;
并致电:
char inputfile[100]; // potential buffer overflow risk but, since it is
char modelfile[100]; // sample code, not really relevant.
parse_command_line (myArgC, myArgV, inputfile, modelfile);
这将解析参数,填充您传入的两个文件名变量,并svm_parameter
根据提供的参数设置内部。