【发布时间】:2013-03-25 23:23:12
【问题描述】:
我有以下代码:
#include <iostream>
using namespace std;
int main()
{
char fg;
cin>>fg;
char x[20];
x[0]='0';
if(fg=x[0])
{
cout<<"It's true!"<<endl;
return true;
}
cout<<"It's false!"<<endl;
return false;
}
无论我输入什么,true 总是会返回。我的语法关闭了吗?任何帮助,将不胜感激。
【问题讨论】:
-
啊,我遇到过这个错误的次数。在 if 中尝试 == 而不是 =。只要 x[0] 的计算结果为真,简单的赋值就会为真。
-
你试过调试吗?
-
@CaptainMurphy,评估为真意味着评估为非 0。
标签: c++ char equals-operator