a=2,!a 中有三个运算符号
1、 = 赋值运算符,如:a=5 表示将5存储到a中
2、 , 逗号运算符,逗号前后为表达式,顺序运算返回最后一个表达式的结果,如:
while( scanf("%d", &a), a>0 ) //读一个数,且a>0时循环,并不在乎scanf()函数的运算结果 scanf("%d", &a), a>0 中,操作两个表达式,但只返回a>0的运算结果3、! 非运算 符,其返回值只有两个,1或0。 C中规定, 非0为1,非(非0)为0,如: !5 == 0 , !0 == 1 , !1 == 0
结合以上,a=2,!a 的运算过程为:
a=2
!a ==0
返回0