作者:手机用户2502892543 | 来源:互联网 | 2023-10-12 09:58
bool只有true 和false; 0是flase,其他情况(非0)都是true.
vs.2012不完全支持c99,不能引入头文件stdbool.但文件后缀为.cpp可以直接使用bool类型。
关系运算符(运算结果为bool值)
总结: 关系运算符都是双目运算符,其结合性均为左结合。关系运算符的优先级低于算术运算符,高于赋值运算符。在六个关系运算符中,<、<=、>、>=的优先级相同,高于==和!=,==和!=的优先级相同。需要特别注意: ==才表示等于比较,而=表示赋值.
逻辑表达式(运算结果为bool值)
1、与运算(&&) ;截断与(简洁与)
参与运算的两个表达式都为真时,结果才为真,否则为假。
#include
int main()
{int a = 10, b = 20;if (a > 30 && ++b)//&&是简洁与,前面的条件为0,编译器就不会判断后面的条件,后面的表达式不会运行,所以++b不会被执行{}printf("%d", b);//20return 0;
}
2、或运算(||);截断或(简洁或)
参与运算的两个表达式只要有一个为真,结果就为真;两个表达式都为假时结果才为假。
#include
int main()
{int a = 10, b = 20;if (a <30 || ++b)//&&是简洁或,前面的条件为1,编译器就不会判断后面的条件,所以++b不会被执行{}printf("%d", b);//20return 0;
}
3、非运算(!)
参与运算的表达式为真时,结果为假;参与运算的表达式为假时,结果为真。
3.1、优先级
逻辑运算符和其它运算符优先级从低到高依次为:
赋值运算符(=) < && 和 || < 关系运算符 < 算术运算符 < 非(!)
&&和 || 低于关系运算符,!高于算术运算符。