*号和++属于同一优先级,且方向都是从右向左的,*p++和*(p++)作用相同。
如下例子:
char a[]="asdasf";
char *p=a;
printf("%dn",p);//打印一地址值x
*p++;
printf("%dn",p);//打印一地址值x+1
printf("%cn",*p);//打印s
printf("%sn",a);//打印asdasf
这里的++作用于p上,先把p++,导致p向后移动了一位,所以*p打印值为s,且*p++执行之后数组a的内容没有改变。
-------------------------------------------------
char a[]="asdasf";
char *p=a;
printf("%dn",p);//打印一地址值x
(*p)++;
printf("%dn",p);//打印一地址值x+1
printf("%cn",*p);//打印b
printf("%sn",a);//打印bsdasf
这里++作用于*p上,所以*p++执行之后数组a的值改变了。
最后
以上就是虚幻大山最近收集整理的关于*p++里*和++的优先级的全部内容,更多相关*p++里*和++内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复