Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C “我们所说的”是什么意思;“尺寸”;当谈到数组时?“;_C_Arrays - Fatal编程技术网

C “我们所说的”是什么意思;“尺寸”;当谈到数组时?“;

C “我们所说的”是什么意思;“尺寸”;当谈到数组时?“;,c,arrays,C,Arrays,当谈到数组时,我们所说的“维”是什么意思 我理解这个想法。但答案是什么呢 例如,int数组[5]我知道,这是一个1D数组。它在索引中有1个下标。但是为什么它被称为一维数组呢?为什么不是1个下标数组呢?我们之所以说“维”,是因为这是这类事物的通用术语。例如,想想我们的世界:它有三个显而易见的维度(宽度、高度和深度)。或者想想几何:一个点有零维,一条线有一维,一个平面有两维,一个立方体有三维,等等。这个术语适用于阵列,因为它精确地描述了与阵列相关的相同事物。数组的维数是它有多少个轴 一维数组有一个轴

当谈到数组时,我们所说的“维”是什么意思

我理解这个想法。但答案是什么呢

例如,
int数组[5]我知道,这是一个1D数组。它在索引中有1个下标。但是为什么它被称为一维数组呢?为什么不是1个下标数组呢?

我们之所以说“维”,是因为这是这类事物的通用术语。例如,想想我们的世界:它有三个显而易见的维度(宽度、高度和深度)。或者想想几何:一个点有零维,一条线有一维,一个平面有两维,一个立方体有三维,等等。这个术语适用于阵列,因为它精确地描述了与阵列相关的相同事物。数组的维数是它有多少个轴

一维数组有一个轴,如直线:

XXXXXXXX 您可以使用两个下标对其进行索引,例如
array[x,y]


我不会尝试用ASCII艺术表示3+维数组(如立方体):-)

最简单的方法是,数组的维数是类型后面的方括号数:

int[]是一个一维数组,int[]]是一个二维数组,等等

有时,如果您将数组看作是在多个维度中绘制它们,这会很有帮助。一维数组只是一条直线,在图形中有一个轴。二维数组是一个表,如果要绘制它(x,y),它有两个轴。3d数组是一个立方体,有3个轴(x、y、z)。

“数组的维度”是指指定数组的单个元素所需的索引或下标的数量

维度和下标可能会混淆。下标是数字(或其他类型的关联键),而维度是可接受键范围的描述;数组的每个维度都需要一个下标


例如,在C/C++
中,[10][5]
是一个具有两个维度的数组:大小为10和大小为5。您需要两个下标或键来寻址它的元素。一个下标必须介于0和9之间,包括0和9;另一个下标在0和4之间。

多维数组允许其成员也是数组。例如:

a=[1,2,3];//一维数组 b=[7,8,9];//一维数组

c=[a,b];//多维(二维)数组。数组的数组

所以现在c[0]被分配数组a作为它的元素,c[1]是b。多维数组的成员可以寻址,例如:

c[0][0](在本例中为[0],或1。。。
c[1][2](在本例中为b[2],或9…

维度对数组的应用方式与对笛卡尔坐标系的应用方式基本相同。维度表示数组可以增长多少轴。例如

int A[5]  is one dimentional, all elements are access by one index
int A[5][5] is two dimentional. Element are aligned along x and y plane.
int A[5][5][5] is three diminutional, elements are aligned in 3D space.
随着3D的成长,视觉变得越来越困难。4d阵列就是这样

int A[5][5][5][5]
这基本上意味着它可以在4个方向上生长

[5][5][5]  [5][5][5] [5][5][5] [5][5][5] [5][5][5] [5][5][5]

[5][5][5]  [5][5][5] [5][5][5] [5][5][5] [5][5][5] [5][5][5]

[5][5][5]  [5][5][5] [5][5][5] [5][5][5] [5][5][5] [5][5][5]

[5][5][5]  [5][5][5] [5][5][5] [5][5][5] [5][5][5] [5][5][5]

[5][5][5]  [5][5][5] [5][5][5] [5][5][5] [5][5][5] [5][5][5]

这是3D数组A[5][5][5]的5个元素。在上述情况下,这只是A[0][5][5][5]的第0个元素(请您重新措辞好吗?))但更具建设性的是,您的意思是“当谈论数组时,我们所说的“维度”是什么意思?”我不认为这个问题缺乏研究工作。但我确实认为问题不在这里:(@Saqib:我没有投反对票,但我怀疑投反对票的人(很早以前)觉得这个问题不清楚。后来的编辑把它说得更清楚了。
[5][5][5]  [5][5][5] [5][5][5] [5][5][5] [5][5][5] [5][5][5]

[5][5][5]  [5][5][5] [5][5][5] [5][5][5] [5][5][5] [5][5][5]

[5][5][5]  [5][5][5] [5][5][5] [5][5][5] [5][5][5] [5][5][5]

[5][5][5]  [5][5][5] [5][5][5] [5][5][5] [5][5][5] [5][5][5]

[5][5][5]  [5][5][5] [5][5][5] [5][5][5] [5][5][5] [5][5][5]