C++ 如何简单地比较C++;?
我有以下代码:C++ 如何简单地比较C++;?,c++,char,equals-operator,C++,Char,Equals Operator,我有以下代码: #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 fa
#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;
}
#包括
使用名称空间std;
int main()
{
焦fg;
cin>>fg;
charx[20];
x[0]='0';
如果(fg=x[0])
{
C++中的CUT< P>使用<代码> ==/COD>比较。<代码>=/COD>是一个赋值。它可以在<代码>条件下使用< < /Cord>语句,但它将被评估为<代码>真< /COD>除非字符是“代码>”0’< /代码>(不是<代码> '0' <代码>,如您所说的那样):
在if语句中使用==
。例如:
if (fg == x[0]) {
//...........
}
=
比较,但是=
使fg
等于x[0]
,这就是为什么每次都是这样。啊,我有这个错误的次数。在if中尝试==而不是=。只要x[0]计算结果为true,简单赋值将为true。您是否尝试过调试?@CaptainMurphy,通过计算结果为true,您的意思是计算结果不是0。我添加了第二个=,但现在即使输入0,它也会返回false。感谢所有人迄今为止的帮助。@DmitriyPotemkin堆栈溢出允许您删除不再适用的注释。指向e注释,然后单击它旁边的小十字。
if (fg == x[0]) {
//...........
}