TIKITAKA. 2021-02-22 10:47 采纳率: 53.8%
浏览 34
已采纳

求大佬讲解一下怎么理解。。。。。

  • 写回答

2条回答 默认 最新

  • 小白小白你好菜 2021-02-22 14:44
    关注

    int a[5], *p中,单独a是数组首元素的地址,即a相当于&a[0],(a是常量)

    p是int类型的指针变量,p可以理解成一个地址变量,你可以使p = a,那么指针p就指向数组a首元素的地址

    A选项p = p+1表示,指针的值往后移,此时p指向a[1]的地址

    B选项,因为a是常量,那么常量的值改变明显不合法,例如3 = 3 + 1是不合法的

    C选项,p代表了一个地址,a代表了一个地址,p-a表示中间有多少个数据

    D选项,常量加减肯定没问题啦,就是2+3嘛,常用法是printf("%d", *(a+2));表示输出首元素后面的第二个元素

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 保护模式-系统加载-段寄存器