main() { int i, x[3][3] = {1, 2, 3, 4, 5, 6, 7, 8, 9}; for(i = 0; i < 3; i++) printf("%d,", x[ }

2024年12月04日 22:58
有1个网友回答
网友(1):

二维数组在内存中是如下存储的,按行进行存储的

x[0][0] 9 x[0][1] 8 x[0][2] 7
x[1][0] 6 x[1][1] 5 4
x[2][0] 3 2 1

其实也可以看做一维数组的存储 x[0]----x[8] x[0]=9 x[1]=8 x[8]=1

因为存储的时候都是一样的

p指向的是 x[1][1] 也就是说 p[0] = x[1][1]
p[1] = x[1][2] p[2] = x[2][0] 所以结果就是那样了。

这里并不是拆分,而是计算的相对位置。