请问,C语言里,变量a=1,b=2; 那么if(a=b)怎样理解?

如题所述

if(a=b)
相当于两句:
a=b;
if(a)
对应你的a=1,b=2;
执行完
a=b;//a 的值变成2
if(a)//相当于if(2)所以条件一直成立 。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-03-28
这个就是个错误啊

if (a=b) 这个还用if吗?

肯定为真 因此肯定执行if (a=b)条件下的语句

估计是想写 if (a==b)

比较写成赋值了···
第2个回答  2013-03-28
在C语言中,判断相等得用==两个等于号,一个等于号是赋值符号,所以这句话if(a=b)先是将b的值赋给a,然后再进行判断。
由于C语言中整数可以作为条件,任何非零的整数都会判定为真,所以这个条件计算完成之后是if(2),为真,执行if语句后面的语句。
第3个回答  2013-03-28
首先,将b的值赋值给a, a的值为2 再判断 if(a) 即 if(2),条件为真

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网