我有以下代码:
int main(int argc, char *argv[])
{
if(strcmp(argv[1],"-e")==0)
{
//perform code
}
//code if argv[1] is not "-e"
return 0;
}
当我取出整个 if 语句时:
if(strcmp(argv[1], "-e")==0)
我的代码 if strcmp(argv[1], "-e") == 0) is not "-e" 工作正常。但是当我把它留在里面时,我的代码只适用于上面的 if 语句为真时。关于为什么会发生这种情况的任何想法?例如:
如果我使用未注释掉的 argv[1] 进行编译:
//示例程序将是一个可执行文件
exampleProgram -e < a.txt 有效,但 exampleProgram < a.txt 无效。任何想法为什么?