C语言逻辑运算符的用法及解读
C语言逻辑运算符在C语言中逻辑运算符有、||、!表示“与”的意思需要两端的表达式的值都为true该式的值才为true。||表示“或”的意思两端的表达式的值只要有一端为true该式的值就为true。!表示“非”的意思将该式的真值换成相反的真值即false和true互换。但是在C99里有这样的一个名为“短路”的特性使用时如果左边false则右边不会执行使用||时如果左边true则右边不会执行运算符举例12345678910#includestdio.hintmain(){inta-1,b0;if(ab)printf(%d %d,b,a);if(ba)printf(%d %d,a,b);return0;}想想程序的输出结果是什么答案是1 2程序的流程是先定义变量a-1b0然后进入第一个if()判断左边的值是-1右边的值为0所以此if()下的语句不执行但是由于左侧为true所以右侧的b也会得到执行此行结束时a的值为0b的值为1。第二次if()左边的值为2右边的值为1所以if()下的语句得到执行输出a的值1b的值2。||运算符同理如果左边的表达式的值为true则右边的表达式不会执行。