我正在用 C 语言编写一个函数/方法,它应该执行以下操作:
/** * 接收参数列表并将配置文件的名称复制到 conffile。* 如果使用了默认文件名,则返回 1;如果 * 参数 -f 存在并因此使用了指定的名称,则返回 2。如果有 -f * 参数但无效,则返回 0。(最后一个参数)
*/
基本上,程序将“询问”这两个选项之一:
1-控制器-f FCFS|LOOK
2-控制器FCFS|LOOK
如果问第二个,我们输入使用默认名称的情况。
int get_conf_name(char* argv[], char* conffile) {
// Searches for -f
s = strstr(*argv, "-f");
if(s != NULL){
if(//its valid){
strcpy(conffile, //the name of the file which comes after -f
return 2
}
else return 0
}
else{
strcpy(confile, "config.vss")
return 1
}
}
这里的问题是如何在 -f 之后获取单词并将其复制到配置文件中?而且,我可以像访问 conffile 一样访问 argv,因为其中一个是数组吗?我想过使用 for 循环和 strlen,但这对计算机来说是很多不必要的工作,不是吗?