向函数传递多维数组的时候不需要说明第一维的长度,但是需要所有其它维的长度,原因有三:
一、数组元素在内存中按照“行优先”规则存储,所以需要列数来确定一行有多少个元素;
被调用的函数当然要在堆栈上创建控件,确定行的元素肯定要有列数喽。(当然这只拿二维数组来举例)
二、任何多维数组可以看作比其少一维的数组为元素组成的一维数组,在调用一维数组时,想想是不是可以不用写元素个数
int array[10]={0};
func(array[]);
//func(array);
//func(array[10];
三、C++/C不对数组进行越界访问检查,因此对编辑器来讲不需要知道第一维的数目。
strlen 与 sizeof 的区别与联系
strlen遇到c标准字符串的'/0'便停止,sizeof返回类型长度