#include<stdio.h>
#include<stdlib.h>
void main()
{
//1 + 2 * 3 //优先级,*优先级高于+
//1 + 2 - 3 + 4 - 5 //优先级相等,从左向右按顺序执行
//a = b = c = 5; //赋值运算符,从右向左执行
int num[5] = { 1, 2, 3, 4, 5 };
int *p = num;
//测试*与++的优先级
//若*的优先级高于++的优先级,则p不变,nun[0]的值加1
//若*的优先级低于++的优先级,则p增加4,num[0]的值不变
printf("%p,%d\n", p, num[0]);
//*p++; //相当于*(p++)
++*p; //两个运算符都和变量直接相邻才有优先级的意义
//此时只有一个运算符直接和变量相邻,则从近到远执行运算符
printf("%p,%d\n", p, num[0]);
//有结果可知,++的优先级高于*的优先级
system("pause");
}
优先级接触生效(两运算符和变量直接相邻)
最新推荐文章于 2022-01-31 18:11:51 发布