问下1个C++多维数组的问题~希望高手能详细给…

如题所述

第1个回答  2019-04-29
多维数组的说明(以二维为例子)是:<类型名><数组名>[<行数>][<列数>]
在二维数组中,为数组赋初值的方式有:
int
a[2][3]={{1,2,3},{4,5,6}}
亦可写为:
int
a[2][3]={1,2,3,4,5,6}
二者的效果是一样的.系统将按逐行的次序,顺序为各元素赋值.其次序为:
a[0][0],a[0][1],a[0][2],a[1][0],a[1][1],a[1][2].
我迷糊的来了~这a[0][0]等值对应的是这个数组,我看这个数组定义有2行3列~上面int
a[2][3]赋值也有是{{1,2,3},{4,5,6}},这个数组中的元素到底指的是什么啊,如果是指的1,2,3这些数字,那么系统为各元素赋值的a[0][0]到a[1][2]到底是指的什么啊~是不是对应这6个数字啊.我看后面的指针调用经常能用到这样的数组比如:
int
a[2][3]
;
int
*pa=a[0]
是不是就是相当与这个指针指向了 1 这个元素啊?
补充1
2008-02-16
02:50
是不是这个指针最终指的值还是1这个元素啊
&a[0][0]居然是指想a[0][0],a[0][0]的又是为1赋的值,是不是这个指针的最终意思还是1这个元素

问下1个C++多维数组的问题~希望高手能详细给…
亦可写为:int a[2][3]={1,2,3,4,5,6} 二者的效果是一样的.系统将按逐行的次序,顺序为各元素赋值.其次序为:a[0][0],a[0][1],a[0][2],a[1][0],a[1][1],a[1][2].我迷糊的来了~这a[0][0]等值对应的是这个数组,我看这个数组定义有2行3列~上面int a[2][3]赋值...

C\/C++编程知识:多维数组(二维数组、三维数组)知识点分享
C\/C++编程中的多维数组,例如二维和三维数组,是数据存储的高级结构。它们以表格形式存储数据,行主序排列。声明多维数组的基本格式是:data_type array_name[size1][size2]...[sizeN],其中data_type是存储的数据类型,如int,array_name是数组名称,size1, size2等是各个维度的大小。例如,二维数组...

C++函数参数是多维数组,该怎么弄?
首先C++为矩形数组,意味着 int[2][3] 等于 int[6],int[2][3][4] 等于 int[24] 那为什么还需要多维数组?一维数组完全能完成多维数组的功能啊。原因是,这是为了方便算法的科学计数吧。就像一千万可以表示为:1000000 也可以表示为 0.1X10的8次方。int a[2] 这是一个一维数...

求助:C++多维数组求相同且相邻的数字的个数
int cur_max = (a[i][j] == 1 ? 0 : -1);if (i-1 > 0 && a[i-1][j] == 1 && !b[i-1][j]){ int cur_max1 = SearchMax(i-1,j);if (cur_max1 > cur_max){ cur_max = cur_max1;} } if (i+1 < 10 && a[i+1][j] == 1 && !b[i+1][j]){ i...

有关于C++多维数组的初始化
char arr2[ ] = {3,3}; \/\/数组长度为2 只能表示到arr2[1]这里有个默认值的说法。没初始化的数组元素它们都默认为0。也就是说,在你定义一个数组时已经确定了它的长度,如果你不初始化它们,默认都为0 。你的程序中{3}只是对第一个元素给出了3,其它的都没有初始值,默认为0。因此...

在C++中,怎样用new创建一个多维的数组?
\/\/创建 \/\/分配第一层 arr_np3D = (int***)new int**[nz];\/\/分配第二层 for (int i=0; i<ny; i++){ arr_np3D[i] = (int**)new int*[ny];} \/\/分配第三层 for (int i=0; i<ny; i++){ for (int j=0; j<nx;...

C++函数如何返回多维数组?最好能举个实例便于理解。
数组在作为函数的参数的时候,会退化为指针。在函数返回值上,int [] 不是一个类型,所以也不可能返回。不过如果你真的想玩死c++,给你个小程序看看,这个ok include <iostream> include <vector> include <algorithm> using namespace std;typedef vector<vector<int>> twoDimIntArray; \/\/定义一...

C++中用多维指针
如count[6][4]表示 6个一维数组 。count=count+0 是一个指针,指向第一个数组,即*count就是第一个数组第一个元素的地址,**count=count[0][0]。count+i就指向第i个数组,*(count+i)就是第i个数组的首地址。自己慢慢体会,先把一维数组彻底弄明白,再想这个问题!!!

高分求一C++编程问题,高手请进!!!
multi_array - 多维容器和用于邻接数据数组的适配器,来自 Ron Garcia.numeric\/conversion - 优化的基于策略的数字转换,来自 Fernando Cacciola.operators - 用模板来简化算术类和迭代器,来自 Dave Abrahams 和 Jeremy Siek.random - 一个完整的随机数生成系统,来自 Jens Maurer.rational - 有理数类,...

为什么在C++中不能修改数组的某部分?
首先,我们来了解一下什么是数组。在编程中,数组是一种数据结构,用于存储一系列相同类型的值。每个值都有一个特定的索引,通过这个索引我们可以访问或者修改这个值。数组可以是一维的(如一个列表),也可以是多维的(如一个表格)。当你看到“不能更改数组的某一部分”这样的错误消息时,通常意味着你...

相似回答
大家正在搜