所以我的计算机科学教授决定问我们一个问题,但没有给出如何找到答案的指示。问题如下:
计算以下元素的位置,其中基址为FFFFFBACD: A [4] [6],A [5] [5],A [2] [7] 该数组声明为int [] [] = new int [8] [10]
他并没有要求我们编程,只是找到位置。我的问题是基地址看起来很不清楚,我不知道如何进行计算以找到答案。任何指导都将非常感谢!!
答案 0 :(得分:2)
假设你的整数是4个字节,那么元素[0] [0]位于地址FFFFFBACD
。
下一个元素是[0] [1],距离为4个字节,意思是:FFFFFBAD1
。
总的来说,每个“行”中有10个元素,因此有40个字节。因此[1] [0]的地址是FFFFFBACD + 40字节= FFFFFBAF5
因此,[4] [6]将从起始地址开始为40 * 4 + 5 * 4字节:FFFFFBB85
。
(请注意,这里的行数是4,每行乘以40个字节,第五行中的元素数是6,每个长度是4个字节 - 这些是乘以4的不同原因。)
使用此逻辑,尝试找到其他地址。它不应该那么难。