指针与多维数组

来源:互联网 发布:网速流量检测软件 编辑:程序博客网 时间:2024/05/17 03:34

假定下面有两个定义:

int a[10][20]int *b[10]
从语法的角度讲,a[2][3]和b[2][3]是没有什么区别的都是对int对象的一个合法引用。

但是a是一个真正的二维数组,编译器给他分配了200个int类型长度的存储空间。

而对于b来说仅仅是分配了十个指针。如果b中的每个元素都指向具有二十个元素的数组,

那么编译器就要为他分配200个int类型长度的存储空间在加上10个指针的存储空间。

指针数组与普通二维数组相比:指针数组的一个优点是指针数组每一行的长度是可以不同的

下面是指针数组和二维数组的声明和图形化存储的一个比较