请问C++中二维数组的问题是怎么回事?

2025-04-04 02:59:37
推荐回答(2个)
回答1:

  按照标准C++语法,*操作符只能针对指针,*a 数组这样是没有意义的。在编译器中,对此语法不会报错,但会忽略操作符,当做a处理。

二维数组本质上是以数组作为数组元素的数组,即“数组的数组”。
定义:
类型说明符 数组名[常量表达式][常量表达式]
例如:
float a[3][4],b[5][10];
定义a为3*4(3行4列)的数组,b为5*10(5行10列)的数组。注意,不能写成
float a[3,4],b[5,10];

回答2:

C++没有“空数组”这一说,事实上也不需要真正为空的数组。数组就是用来读写的,空着有什么用?如果不想看到数组中的某些元素,不读它就行了。声明一个数组,系统就在栈上为分配一块相应大小的空间。如果数组初始化了,那么这块空间里都被写入了0。