问一个c语言的问题,求指点!!(问题见正文)

2019-07-15 19:12发布

int arr[]={6,7,8,9,10};int *p = arr;
*(p++) += 123;
printf("%d %d",*p,*(p++));
//printf("%d %d",*p,*(++p))这个输出是8 8还可以理解,上面那个输出8 7怎么解释?



友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
4条回答
lfh830
1楼-- · 2019-07-15 19:59
 精彩回答 2  元偷偷看……
胡侃一条街
2楼-- · 2019-07-15 21:51
这是++p和p++的问题,p++执行完后不能立即生效
阿信509
3楼-- · 2019-07-15 22:05
printf好像是从右面计算,然后从左面开始输出,才造成这种结果
liebert
4楼-- · 2019-07-16 01:01
你的代码貌似不对呀!
你的问题是C编译器的编译规则,你看手册不就行了

一周热门 更多>