c语言中!a==1是什么意思

如题所述

!操作符优先度比==高

所以只要a是0 !a就是1, 所以返回1

如果a不是0, 则!a就是0, 所以返回0

所以等价于判定a是不是等于0

扩展资料

C语言包含的各种控制语句仅有9种,关键字也只有32 个,程序的编写要求不严格且以小写字母为主,对许多不必要的部分进行了精简。

实际上,语句构成与硬件有关联的较少,且C语言本身不提供与硬件相关的输入输出、文件管理等功能,如需此类功能,需要通过配合编译系统所支持的各类库进行编程,故c语言拥有非常简洁的编译系统。

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-09-26
1楼是错的
!操作符优先度比==高
所以只要a是0 !a就是1, 所以返回1
如果a不是0, 则!a就是0, 所以返回0

所以等价于判定a是不是等于0本回答被提问者采纳
第2个回答  2011-04-26
!表示非,==表示验证是否等于,!优先级高于==,先执行!,在验证是否等于1.
第3个回答  2011-04-26
可以理解为a等于0
!操作符优先度比==高,先计算!a
如果a=0则返回值为真,只要a不等于0则返回值为假
第4个回答  2011-04-26
!优先级要打于==
所以是先求!a然后再求==

如果不是这个意图可用使用括号来表明逻辑:
!(a==1)
或(!a)==1
这样描述更清晰.