文章目录

  • (一)、什么是优先级?
    • (二)、优先级表格都有什么?
      • (三)、经典优先级举列.
        • 1.1 前置++和后置++是什么?
        • 1.2前置++后置++在判断语句中.
        • 1.3前置++后置++在数据类型中.
        • 1.4前置++后置++在输出语句中.
        • 1.5前置++和前置++同在赋值语句中
        • 1.6后置++和后置++同在赋值语句中
        • 1.7后置++和后置++同在赋值语句中
        • 前置++和后置++,单个赋值
      • (四)总结.

(一)、什么是优先级?

优先级是指计算机分时操作系统在处理多个作业程序的时候,决定各个作业程序接收系统调用的先后。优先级越高、先调用。

(二)、优先级表格都有什么?

![在这里插入图片描述](https://img-blog.csdnimg.cn/349a3421ff8243dea1bd9e7b27eb6a72.jpeg#pic_center)

(三)、经典优先级举列.

本次我们以前置++和后置++进行详细讲说:

1.1 前置++和后置++是什么?

前置++:是先自增,然后再进行表达式.
后置++:是先进性表达式,再进行自增.

1.2前置++后置++在判断语句中.

后置++在判断语句中:在if语句中a++的值仍然为5,因为先进行表达式里面的判断语句得出来不满足,所以进入else语句,此时a=6,又+1所以结果为7.

在这里插入代码片#include <iostream>#include using namespace std;int main(){int a = 5;if (a++ > 5)cout << a << endl;else{cout << a+1;}}


前置++在判断语句中: 先进性自增,然后再判断的出来if为真输出a

在这里插入代码片#include <iostream>#include using namespace std;int main(){int a = 5;if (++a > 5)cout << a << endl;else{cout << a+1;}}

1.3前置++后置++在数据类型中.

后置++在数据类型中:直接运行.

#include #include using namespace std;int main(){int a = 5;a++;cout << a << endl;}


前置++在数据类型中:依然直接输出.

#include #include using namespace std;int main(){int a = 5;++a;cout << a << endl;}

1.4前置++后置++在输出语句中.

后置++在输出语句中:因为a默认优先级为+,+的优先级小于++,所以我们先运行后面的后置++,又因为后置++先进性表达式,所以第二个a仍然为5,其余的为6.

#include #include using namespace std;int main(){int a = 5;cout << a << " " << a++ << endl;cout << a << endl;}


输出语句中的前置++: 因为先进性前置++,所以结果都为6

#include #include using namespace std;int main(){int a = 5;cout << a << " " << ++a << endl;cout << a << endl;}

1.5前置++和前置++同在赋值语句中

()的优先级高于+、先执行两个小括号内的++,第一次++x的时候为5,放在储存区,第二次为6,所以两个结果都为6;

#include using namespace std;int main(){int a = 4,b;b =(++a)+(++a);cout << b << endl;}

1.6后置++和后置++同在赋值语句中

先存值、后输出

#include using namespace std;int main(){int a = 4,b;b =(a++)+(a++);cout << b << endl;}

1.7后置++和后置++同在赋值语句中

后置++优先级高于前置++优先级,所以后置++先运行为4,前置++在5的基础上再+1为6.

#include using namespace std;int main(){int a = 4,b;b =(a++)+(++a);cout << b << endl;}

前置++和后置++,单个赋值

后置++,先运算再++

#include #include using namespace std;int main(){int a=5,b;b = a++;cout << b << endl;}

(四)总结.

一定要看好优先级再进行数据判断!