今天我水的文章是二维数组的存放
二维数组的存放方式其实和一维数组没有区别,但如果想要更直观的了解,我们可以把它们的地址打印出来。
代码如下:
#include <stdio.h>
int main()
{int arr[3][3];//二维数组,int数组类型,arr数组名,[]放常量值限制元素个数,第一个[]代表行,第二个代表列int i=0;//int j=0;//变量for(i=0;i<3;i++)//产生行的下标{for(j=0;j<3;j++)//产生列的下标{scanf("%d",&arr[i][j]);}}for(i=0;i<3;i++){for(j=0;j<3;j++){printf("arr[%d][%d]=%p\n",i,j,&arr[i][j]);//打印地址,}}return 0;
}
运行结果:
从代码的运行结果来看,他们都相差了四位字节,或者说在存储空间中每个元素都占据四个字节,他们在内存中的存放是连续的。
重点:二维数组的元素在内存中的存放是连续的,一个接着一个的满足一行后会直接接上下一行的代码。和一维数组并没有区别。
完