c++中if(x=10)的含义与if(x==10)的区别?

2024-11-15 17:37:09
推荐回答(5个)
回答1:

if(x=10)——把10赋给x,然后判断x否为0;刚刚赋的值10,当然不为0,所以为“真”;
if(x==10)——看看x是否等于10,如果等于10则为“真”,否则为“假”。

回答2:

=表示赋值运算符 == 表示关系运算符 等于
if(x=10)的含义是把10赋值给x 即这时候x等于10不等于0 一定满足if的条件
f(x==10)的含义是 当x等于10时才满足for的条件

举个例子
int x=5;
for(i=10) x=x+2;
else x=x-2;
那这个结果就是x=12 不是说当i=10时满足条件 而是把10直接赋给了i相当于
i=10;
if(i)
x=x+2;因为满足i不等于0 所以执行语句
int x=5;
for(i==10) x=x+2;
else x=x-2;
结果是7
这个是当i等于10是满足条件 显然这时候不满足条件
不知道我说的你有没有听懂 有啥不明白的再问吧

回答3:

前者是给x赋值,这个赋值运算的结果是10,是恒真的;后者则是判断x是否等于10,if语句才是有效的。

回答4:

x=10是赋值语句。将10赋给a。x==10是判断语句 判断x是否等于10

回答5:

if(x=10)相当于x=10;if((bool)x)