二维数组X按行顺序存储,其中每个元素占1个存储单元。若X[4][4]的存储地址为Oxf8b82140,X[9][9]的存储地址为Oxf8b8221c,则X[7][7]的存储地址为?
解题思路:
由题中X[4][4]的存储地址为Oxf8b82140,可以知道第四行行首的地址为Oxf8b82140-4=Oxf8b8213c;
由题中X[9][9]的存储地址为Oxf8b8221c,可以知道第九行行首的地址为Oxf8b8221c-9=Oxf8b82213;
则可以得到每一行的元素个数是多少
(Oxf8b82213-Oxf8b8213c)/5=0xd7,换算成10进制就是215;
每一行就是215/5 = 43
所以每一行元素个数就是43个
每一行元素个数是43个,第九行跟第七行差两行,差的元素个数就是86个,换算成十六进制就是0x56;第7行行首的存储地址是Oxf8b82213 - 0x56 = Oxf8b821bd,而X[7][7] 与第七行行首差七个字节,所以X[7][7] = Oxf8b821c4