|
<p>if语句括号中为赋值表达式 如何判断真假?</p>
<p><img src="http://img.baidu.com/img/iknow/icn_point.gif"> 悬赏分:10 -</p>
<p>解决时间:2010-5-26 09:45</p>
<p>例如:</p>
<p>if(n1=1)</p>
<p>{</p>
<p>……</p>
<p>}</p>
<p>这种情况c语言是怎么规定的?</p>
<p>谭浩强的书上怎么没写这种情况?</p>
<p>问题补充:</p>
<p>n1=1赋值表达式是真是假?如果前面有n1=1;或者n1=0;呢</p>
<p>为什么要这样写,如果恒为真就写if(1) 恒为假就写if(0) 不就行了</p>
<p>写成if(n1=1)想说明什么?</p>
<p>提问者: gosbe - 三级</p>
<p>最佳答案</p>
<p>写成if(n1=1)表示的就是恒为真,逻辑效果与if(1)相同。但是if(n1=1)在表示恒真的同时又为n重新赋了新的值,这个值的生命范围是if以下的{}内的所有代码。它与if(1)的区别就在此!</p>
<p>0</p>
<p>回答者:</p>
<p>angel__man - 七级 2010-5-25 11:39</p>
<p>我来评论>></p>
<p>提问者对于答案的评价:</p>
<p>谢谢 这个语句在keil编译时会产生warning的,但没有错误 我看的程序是错的 应该是if(n1==1)</p>
|
|