C/C++关于逻辑运算符“&&”和“||”的优先级问题及实验
目录:
1、前言;
2、实验代码及运行结果;
3、总结。
1、前言
在许多相关教材中,对于逻辑运算符“&&”和“||”的优先级问题,大都只有这样一句简单的描述:“逻辑运算符‘&&’的优先级高于逻辑运算符‘||’”。而在实际应用中我们会发现,它们的优先级关系并不像这句描述那样简单,或者说,并不像我们平常所想的“先算后算”那样的优先级。
本文将就该问题展开讨论和实验,以探索它们真正的优先级关系,供初学者学习和参考。如果以下内容有误,还望不吝指出。
2、实验代码及运行结果
2.1在只有“&&”时
#include<stdio.h>
int main()
{
int x = 0, y = 1;
(y = 2) && (x = 1) && (x += 1);
//结果:x=2,y=2;
printf("x = %d , y = %d\n", x, y);
(y = 3) && (0) && (x = 3);
//结果:x=2,y=3;
printf("x = %d , y = %d\n", x, y);
(0) && (y = 4) && (x = 4);
//结果