a==1)&&(!b==0),而a=2,b=3,第一个表达式是什么意思
来源:学生作业帮助网 编辑:作业帮 时间:2024/06/25 21:02:37
![a==1)&&(!b==0),而a=2,b=3,第一个表达式是什么意思](/uploads/image/z/749089-1-9.jpg?t=a%3D%3D1%29%26%26%28%21b%3D%3D0%29%2C%E8%80%8Ca%3D2%2Cb%3D3%2C%E7%AC%AC%E4%B8%80%E4%B8%AA%E8%A1%A8%E8%BE%BE%E5%BC%8F%E6%98%AF%E4%BB%80%E4%B9%88%E6%84%8F%E6%80%9D)
a==1)&&(!b==0),而a=2,b=3,第一个表达式是什么意思
a==1)&&(!b==0),而a=2,b=3,第一个表达式是什么意思
a==1)&&(!b==0),而a=2,b=3,第一个表达式是什么意思
这个考的是C语言的运算符的优先级了.
一般来说单目运算符优先级高于双目运算符.
这里!逻辑非运算符高于== 判等运算符,所以会优先计算!.
并且C语言使用0表示逻辑假;非0表示逻辑真,一般使用1来表示.
a=2,非0的值,是逻辑真,所以!a就是逻辑假,即0
b=3,非0的值,是逻辑真,所以!a就是逻辑假,即0
上面的表达式就相当于
(0==1)&&(0==0),&&是逻辑与运算符,两边同时为真才是真.
而0==1是逻辑假,那么这个表达式的值就是逻辑假,即0.