wind414 2023-01-18 09:39 采纳率: 84.6%
浏览 33
已结题

为什么指针和数组可以直接进行运算

img


第26行那里为什么指针和数组可以直接加减运算?以及22行和23行是什么意思?

(21行if的花括号里没有*,抱歉)

  • 写回答

4条回答 默认 最新

  • sxzwl 2023-01-18 11:07
    关注

    数组变量为指针,所以pArr实际上也是指针。
    假设pArr存储于0x80808086
    则pArr=0x80808086,
    pArr存储[1,2,3,4]
    *pArr=pArr[0]=1
    *(pArr+1)=pArr[1]=2
    以此类推

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
    sxzwl 2023-01-18 11:11

    所以按照上面的假设,第18行代码中p=pArr=0x80808086,
    22行p++即p=p+1,将p指向下一个元素位置,由于int为4个字节(32位电脑),所以此时p=0x8080808A(0x开头为十六进制)
    26行p-pArr 可以求出偏移了多少次

    回复
查看更多回答(3条)
编辑
预览

报告相同问题?

问题事件

  • 系统已结题 1月26日
  • 已采纳回答 1月19日
  • 修改了问题 1月18日
  • 创建了问题 1月18日

悬赏问题

  • ¥15 PADS Logic 原理图
  • ¥15 PADS Logic 图标
  • ¥15 电脑和power bi环境都是英文如何将日期层次结构转换成英文
  • ¥20 气象站点数据求取中~
  • ¥15 如何获取APP内弹出的网址链接
  • ¥15 wifi 图标不见了 不知道怎么办 上不了网 变成小地球了
手机看
程序员都在用的中文IT技术交流社区

程序员都在用的中文IT技术交流社区

专业的中文 IT 技术社区,与千万技术人共成长

专业的中文 IT 技术社区,与千万技术人共成长

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

客服 返回
顶部