CPP学习之——表达式的优先级(5.7)

一 概述

一些复杂的表达式会存在优先级的问题

1
int a=1+2*3+4*5;

该语句会先执行乘法还是加法呢?假如是先执行加法,那么该运算式结果为105,假如是先执行乘法,那么该 运算式结果为27

二 代码及结果分析

2.1 代码

1
2
3
4
5
6
7
#include<iostream>
using namespace std;
int main() {
int a = 1 + 2 * 3 + 4 * 5;
cout << a << endl;
return 0;
}

2.2 输出结果

1
27

2.3 结果分析

  • 答案是乘法与除法的优先级高于加法和减法,因此上式结果为27

2.4 延伸

  • 假如你想要先执行加法再执行乘法,那么可以用括号来改变执行顺序("int a = (1 + 2) * (3 + 4) * 5;")