发 帖  
原厂入驻New
[问答]

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

1257
分享
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怎么解释?



0
2014-7-8 16:15:43   评论 分享淘帖 邀请回答
4个回答
2014-7-8 16:55:46 评论

举报

这是++p和p++的问题,p++执行完后不能立即生效
2014-7-8 17:11:04 评论

举报

printf好像是从右面计算,然后从左面开始输出,才造成这种结果
2014-7-11 13:33:13 评论

举报

你的代码貌似不对呀!
你的问题是C编译器的编译规则,你看手册不就行了
2014-7-11 19:11:54 评论

举报

撰写答案

你正在撰写答案

如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。

高级模式
您需要登录后才可以回帖 登录 | 注册

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容图片侵权或者其他问题,请联系本站作侵删。 侵权投诉
我要提问
快速回复 返回顶部 返回列表