我正在用 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,但这对计算机来说是很多不必要的工作,不是吗?