bycj.net
当前位置:首页 >> 二维数组定义哪个可以省略 >>

二维数组定义哪个可以省略

因为在初始化时有这样一种形式a[ ][3]={1,2,3,4,5,6,7,8,9};这种形式初始化时踏实按列数分的,列数已经定义为3,系统默认为每三个元素一行,等价为a[ ][3]={{1,2,3},{4,5,6},{7,8,9}};如果元素不是3的倍数,则最后一行中所不足的元素默认为0

可以,但是需要初始化 如 int a[][2]={{1,2},{3,4}}; 通过实际的初始值来隐含指定第一个下标为2

因为编译器要根据除第一维之外的其它各维的大小生成正确的存储映射函数来存取数组元素,可以查询有关 存储映射函数 的内容.

因为二维数组存储的时候是"先行后列", 如果不指定烈数, 他就不能知道一行放几个数据了 只要知道了列数, 排头放就可以知道一共能放多少行

不管几维,只有第一个可以留空

因为二维数组在初始化时,是按行进行赋值的,并且每行元素(最好)用大括号括起来.看个例子很好理解的!譬如定义a[2][3],可以由两种情况省略第一维的值.如下: a[][3]={{1,2}{1,2,3}},很明显行值是可以省的,因为不会造

因为二维数组在初始化时,是按行进行赋值的,copy并且每行元素(最好)用大括号括起来.看个例子很好理解的!!!譬如定义a[2][3],可以由两种情况省略第一维的值.如下:a[][3]={{1,2}{1,2,3}},很明显行值是可以省的,因为不会造成歧义!!!注意:使用大括号括对每一行进行赋值的这zhidao种情况下,每一行也可以只对部分赋值.a [][3]={1,2,0,1,2,3},这种情况必须对每一个元素赋值,但当元素个数多时不便使用,推荐第一种!!!

第一个下标可以省略,第二个不能省略~

不可以

声明的时候赋值是对整个数组的赋值,这是编译器特性而声明以后再对a[5][3]赋值实际就是在对第六行第四列的单个元素进行赋值,先不说这个越界,对单个元素进行数组数据的赋值本身就是一个错误所以,如果你要在声明以后再赋值的话,那么必须一个元素一个元素的赋值

网站首页 | 网站地图
All rights reserved Powered by www.bycj.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com