一般用于判断式中,例如:
if(!y)
当y等于0时,!y就为!0,0为假,所以!y为真,if条件成立
当y不等于0时,!y就为!真,所以!y为假(也可以理解为!y=0),if条件不成立
No和Yes的缩写。一般用在 if 语句的两个分支,
一个分支用 N 标识,表示条件不成立执行这个分支;
另一个分支用 Y 标识,表示条件成立执行这个分支。
1、语义不同:
C语言中,运算符“!”表示逻辑非运算,“!y”的表达式表示表达式 y 本来值的反值。而“y!”是错误表达式,没有实义。
2、逻辑不同:
“!y”是逻辑非运算,!只能用来表达式的前面而不是后面。“y!”是语法错误。
3、运行结果不同:
C语言中," !0" 这个逻辑表达式的值为1。(判断的这个数为0,成立,则其表达式的值为1)," !1" 这个逻辑表达式的值为0。(判断的这个数非0,不成立,则其表达式的值为0)。因此“!y”的值根据 y 取反,非 0 即 1。而 “y!”编译时会抛出语法错误。
扩展资料:
逻辑非的相关性质:
1、逻辑运算符把各个运算的变量(或常量)连接起来组成一个逻辑表达式。
2、逻辑运算符有3个,它们分别是: !(逻辑非)、 ||(逻辑或)、&&(逻辑与)。在位运算里面还有 &(位与)、|(位或)、 ^(按位异或)的运算。
3、!运算符在逻辑运算符中的级别最高。
参考资料来源:百度百科-逻辑非
参考资料来源:百度百科-语法错误