c语言中!E表示什么

问题描述:

c语言中!E表示什么
1个回答 分类:综合 2014-12-14

问题解答:

我来补答
楼上是自动答题机回答的,不要理他.
我来说一下吧,C语言中对于整数到布尔类型的处理是0为假,非0为真.
当变量E==0时候,此时把E当作表达式来看,表达式E的值为假,形如if(E)这样的语句不被执行.
当变量E!=0时候,此时把E当作表达式来看,表达式E的值为真,形如if(E)这样的语句被执行.
而!叫做逻辑取反运算符,!真==假,!假==真.
那么我们来看一个例子.
int main ()
{
int E = 0;
if (E == 0) printf ('A');
E = -1;
if (E) printf ('B');
}
这个程序会输出AB,因为一开始E是0,第一个if成立,后来E是-1,第二个if也成立.
为什么!E等价于E==0呢.
当E是0的时候,表达式E的值是假,表达式!E的值是真,此时表达式E==0的值也是真;
当E不是0的时候,表达式E的值是真,表达式!E的值是假,此时表达式E==0的值也是假;
 
 
展开全文阅读
剩余:2000