【发布时间】:2012-07-11 08:25:17
【问题描述】:
我在尝试根据哪个字符串 argv[1] 等于来实现某个分配时遇到了一些麻烦。
int _tmain(int argc, _TCHAR* argv[]) //wchar_t
{
if (argc != 2)
exit(1);
if (argv[1] == L"-foo")
printf("Success!\n");
wprintf(argv[1]);
printf("\n");
system("pause");
return 0;
}
如果我使用参数“-foo”运行可执行文件,我会收到以下输出:
-foo
应该是:
Success!
-foo
字符串正是我想要的样子,但 if 条件仍然为假。使用 == 运算符,wchar_t 字符串是否根本无法比较?如果是这样,我该如何正确比较它们?
【问题讨论】:
-
1.字符串不能以这种方式进行比较。 2. 看这个:codeproject.com/Articles/76252/…
标签: c++ visual-c++ if-statement comparison wchar-t