优先级与结合性

来源:互联网 发布:免费申请淘宝账号 编辑:程序博客网 时间:2024/04/28 17:21

优先级:同一个操作数,优先执行。例如:1+2-3+8*9,先执行8*9

结合性:优先级相等的情况下,计算的方向,例如:int a, b, c; a=b=c=10;从右向左

#include <stdio.h>int main(){int a[5] = {1, 3, 5, 7, 9};int *p = a;printf("%d\n", *p++);//1, ++的优先级大于*return 0;}

p++先结合,p++结合后p变为p+1,但是p++表达式还是等于p,所以相当于打印*p,即为1.



#include <stdio.h>int main(){int a[5] = {1, 3, 5, 7, 9};int *p = a;printf("%d\n",*++p);//3return 0;}
++优先级大于*,++p现结合,结合后++p的表达式变为p+1,所以打印*(p+1)


#include <stdio.h>int main(){int a[5] = {1, 3, 5, 7, 9};int *p = a;printf("%d\n",++*p);//2return 0;}

优先级需要接触,此时*p先结合 ,再结合++,相当于打印(*p)+1



0 0
原创粉丝点击