C语言之数组

内存中的数组

 数组在内存中所占的空间是连续的,其中数组名可以看作是数组首元素的地址。

一维数组(int a[5]

 a:数组首元素的地址

  a+1:指向下一个元素(a[1])

 &a:数组的地址

  &a+1:跳过一个该数组在内存中的所占的大小,指向该数组接下来的一个地址

二维数组(int a[5][5]

 a:首行地址

  a+1:指向下一行

 &a:数组的地址

  &a+1:跳过一个该数组在内存中的所占的大小,指向该数组接下来的一个地址

 a[0]:数组首元素的地址

  a[0]+1:指向a[0][1]

数组的初始化

一维数组的初始化

 int a[4] = {1, 2, 3, 4};

 若仅初始化数组其中一部分,则剩余部分默认被初始化为零。

二维数组初始化

 int a[2][2] = {1, 2, 3, 4};

 

 int a[2][2] = {{1, 2}, {3, 4}};

 若每行元素仅初始化部分则此行剩余部分默认为零。

猜你喜欢

转载自blog.csdn.net/black_hate/article/details/79175726