【发布时间】:2017-10-07 01:13:22
【问题描述】:
我试图从命令行只输入一个文件名。然后我想使用 If 语句将文件名与我期望看到的 4 个不同的名称进行比较。如果我没有得到 4 个预期的文件名之一,那么我需要将其与输入的内容一起打印回用户,然后安全退出程序。
int main(int argc, char *argv[])
{
....
}
我一直在尝试很多不同的方法来完成这项工作,但我就是想不通。我在想也许我接受输入参数的方式是错误的。任何帮助将不胜感激。
-编辑
我只是想明确一点,我不希望你成为一个水蛭并解决我的问题。至少为我指明正确的方向。我不知道如何使用文件名使 for 循环工作。
for(argv == "UnexpectedFile.csv"){
printf("this is an unexpected file: %c", argv[1]);
}
【问题讨论】:
-
for() 语句应该看起来更像:`if( ( strcmp(argv[1], "UnexpectedFile.csv" ) && ,,,, ) 然后打印出失败消息
-
您最终可以使用您预期的文件名初始化一个字符串数组,并使用
for对其进行迭代,并在其中添加一个if语句以确定参数是否是这些文件名之一。
标签: c file-io command-line-arguments