半字山河 2024-06-20 18:59 采纳率: 73.7%
浏览 13
已结题

数据结构中的数组地址问题

img


数据结构中的数组地址问题,求计算过程。
若有数组定义为int a[6][7],假设一个整型数据占4个字节,已知该数组的首地址为1000,则按行存储时数组元素int a [6][7]的地址为多少

  • 写回答

16条回答 默认 最新

  • 关注

    在按行存储(row-major order)的情况下,数组元素a[i][j]的地址可以通过以下公式计算:

    地址 = 首地址 + [(i * 列数) + j] * 数据类型所占字节数

    在这个例子中,我们有:

    • 数组a[6][7],即行数为6,列数为7;
    • 整型数据占4个字节;
    • 数组的首地址为1000。

    因此,对于数组元素a[i][j],其地址计算如下:

    地址 = 1000 + [(i * 7) + j] * 4

    例如,要计算a[3][4]的地址,我们将i=3和j=4代入公式中:

    地址 = 1000 + [(3 * 7) + 4] * 4
          = 1000 + (21 + 4) * 4
          = 1000 + 25 * 4
          = 1000 + 100
          = 1100
    

    所以,a[3][4]的地址是1100。同样的方法可以用于计算数组中任何元素的地址。

    同理a[6][7]的地址

    
    
    
    
          = 1000 + [(6 * 7) + 7] * 4
          = 1000 + (42 + 7) * 4
          = 1000 + 49 * 4
          = 1000 +196
          = 1196
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(15条)

报告相同问题?

问题事件

  • 系统已结题 6月29日
  • 已采纳回答 6月21日
  • 创建了问题 6月20日

悬赏问题

  • ¥15 关于模型导入UNITY的.FBX: Check external application preferences.警告。
  • ¥15 气象网格数据与卫星轨道数据如何匹配
  • ¥100 java ee ssm项目 悬赏,感兴趣直接联系我
  • ¥15 微软账户问题不小心注销了好像
  • ¥15 x264库中预测模式字IPM、运动向量差MVD、量化后的DCT系数的位置
  • ¥15 curl 命令调用正常,程序调用报 java.net.ConnectException: connection refused
  • ¥20 关于web前端如何播放二次加密m3u8视频的问题
  • ¥15 使用百度地图api 位置函数报错?
  • ¥15 metamask如何添加TRON自定义网络
  • ¥66 关于川崎机器人调速问题