在c语言中if !a和if a=0是一个意思吗?
来源:百度知道 编辑:UC知道 时间:2024/05/16 00:29:04
在c语言中,if !a和if a=0是一个意思吗?
不是!if(!a)和if (a==0) 才是一个意思!
不一样的.
下面的这种情况就是不一样的结果
如果a被初始化为 0
那么 !a 就是真
a=0 这一赋值语句还是0,为假 ,那么这两句执行的流程就不一样了.
只有a不等于0的情况,这两个if语句的表达式的值才是一样的.
在c语言中,if !a和if a=0是一个意思吗?
---------------------------------------
很显然不是一个意思。
!a----表示:当a为真时,!a为假;当a为假时,!a为真。
a=0-----表示:a为假。只为假。
if(!a)字面翻译就是:如果非a..
主要指拿目标跟字符a相比.如果不等于a..下面怎么怎么样做..
if a=0字面翻译就是:如果a=0..
主要指拿a的值去跟0比较,如果a=0,下面怎么怎么样做...
光看字面意思就知道不一样的了..
在C语言中,没有类似C++,Java语言的布尔类型,所以规定用0表表示条件为假,用非0(注意不是1)表示条件为真。
所以 if(!a) 就是说“当a为0时条件成立”,也就是if(a==0)了
另外,C语言中表达式可不是你这么写,你是从VB转过来的吧?
一楼说得对,
if !a 意思是 if a==0
if a=0 意思是 if(0) 就是永远不可能
在c语言中if !a和if a=0是一个意思吗?
在C语言编程时,if(a ==0 )和if(0 == a)的区别?
哪位高手知道在c语言中if(!a[i]) break;中的!a[i]是什么意思
C语言问题:if(a%2)与if(a%2==0)有什么区别?
C语言中的if(a>b>c)是什么意思?
c++语言中if(a<b) {*p=a;a=b;b=*p;}if(a<c) {*p=a;a=c;c=*p;} if(b<c) {*p=b;b=c;c=*p;}是什么意思?谢谢
vb语言中有没有类似于 if(a>b,a,b) 这样的语言?
关于C语言中for和if的问题
在excle中如何使象这样的式子=IF(C2>=85,"A",IF(C2>=70,"B",IF(C2>=60,"C",IF(C2<60,A22))))
if (flag(a, b, c))是什么意思?