语句"while(!e);" 中的条件!e等价于e==0 为什么?

2025-03-09 08:01:40
推荐回答(3个)
回答1:

!是非,e非0,是真值,所以!e是假,为0;并不是e==0,而是!e==0。

while(!E)中,!E等价于!(E==true),相当于先判断E是否为真,然后再取反。while(!E)中,实际循环执行的条件是E为假。

!称为逻辑非运算符。执行逻辑 NOT 操作,用来逆转操作数的逻辑状态。如果条件为真则逻辑非运算符将使其为假。

扩展资料:

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

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

参考资料来源:百度百科-c语言

回答2:

!是非,e非0,是真值,所以!e是假,为0;并不是e==0,而是!e==0。

回答3:

e = 0时 , !e = !0 = 1 , 即条件成立