Excelsior Li 2023-02-22 18:59 采纳率: 93.9%
浏览 30
已结题

若定义short a[4]={11, 22, 33, 44}; ,则表达式 (int)&a[3] – (int)&a[0]的值是

若定义short a[4]={11, 22, 33, 44}; ,则表达式 (int)&a[3] – (int)&a[0]的值是

44-11结果应当是33呀,为何答案为6?

  • 写回答

3条回答 默认 最新

  • 快乐鹦鹉 2023-02-22 19:08
    关注

    3 * 2啊
    这里比较的是第3个元素和第0个元素所在的地址偏移量,不是你想的元素值之差!注意&符号,是取地址
    因为两个元素之间差3个元素,且每个元素是short类型,占2个字节,因此两者想减的结果是6,也就是偏移量是6个字节

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

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 2月22日
  • 已采纳回答 2月22日
  • 创建了问题 2月22日

悬赏问题

  • ¥15 net core 同时编辑怎么防止数据多保存了
  • ¥15 matlab做ba模型让其在ba和er规则下生长
  • ¥50 有偿!centos curl port设置问题
  • ¥15 请问Quartus的Verilog代码怎么写?
  • ¥100 Mac 版foxmail 收邮件问题
  • ¥15 QWebEngineView
  • ¥15 如何使用shufflenet进行手写数字识别
  • ¥20 微信小程序播放直播流
  • ¥15 关于迷宫自走单片机循迹小车的知识
  • ¥15 python使用selenium工具爬取网站的问题