【发布时间】:2011-04-25 10:03:59
【问题描述】:
int main (int argc, **argv)
{
if (argv[1] == "-hello")
printf("True\n");
else
printf("False\n");
}
# ./myProg -你好
错误的
为什么?我知道strcmp(argv[1], "-hello") == 0 返回 true... 但是为什么我不能使用相等运算符来比较两个 C 字符串?
【问题讨论】:
-
既然你坚持这个问题是一个 C 问题,我已经用 C 代码替换了 C++ 代码。如果你坚持使用 std::cout,I 坚持使用 C++ 标签。
-
这个问题肯定是完全重复的。
标签: c string pointers equality equality-operator