0

我的指示很清楚,但我做错了,你能帮忙纠正我的错误吗?

说明: else if (“pwd”) 声明一个大小为 MAX_PATH_LENGTH 的 char 变量数组来保存路径 执行 getcwd 打印路径

我的代码:

 }else if(strcmp(argv[0],"pwd")){
        char arr[MAX_PATH_LENGTH];
        char getcwd(arr,MAX_PATH_LENGTH);
        printf("cwd: %s",arr); 
4

1 回答 1

3

strcmp 返回一个整数而不是布尔值。

int strcmp (const char* str1, const char* str2);

如果两个字符串相等,则返回 0,因此您应该检查 if 语句中的返回值,如下所示:

if(strcmp(argv[0],"pwd")==0)
于 2017-04-20T08:51:49.790 回答