c语言简单题

一拳_超人 2020-01-05 11:06:06
第10题怎么做
...全文
18 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
寻开心 2020-01-05
  • 打赏
  • 举报
回复
输出123
把sizeof(int)用4替换掉,就是
*((p+=4) - 4 )
p是char* a是int数组,p每次加4才能指向下一个整数,否则只是指向整数的从低位到高位的不同字节

p+=4的重点是p每次循环中, 指向的位置分别是a[1], a[2], a[3], p的值变了。
如果没有等号是。p+sizieof(int) 那么每次循环都是同一个p

再减4后变成 a[0], a[1], a[2]

因为输出的格式是整数, 所以实际上三次循环输出的就是数组的头三项

69,368

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧