C语言中数组的定义

时间:2018-07-10 08:45:21

标签: c arrays

数组的定义是存储在相邻位置的相似类型元素的集合。

为什么不将相同元素的集合存储在相邻位置?

2 个答案:

答案 0 :(得分:3)

来自C11标准的权威报价:

  

数组类型描述了一个连续分配的非空对象集,其中包含   特定成员对象类型,称为元素类型。元素类型应为   指定数组类型时完成。数组类型的特征在于它们   元素类型和数组中元素的数量。数组类型据说是   从其元素类型派生,并且如果其元素类型为T,则数组类型有时为   称为“ T数组”。

按照重点(我的意思)说,它是关于(一种)固定类型的。

您在这里的期望,例如

  

[...]相同元素的集合[...]

可能会产生误导,因为这可能表明所有成员必须具有相同的类型和值,而事实并非如此。

相反,提及的内容(无论您的来源是什么)

  

相似类型的元素

似乎在传达实际立场方面做得适当。

TL; DR -所有成员都是同一类型,值可以相同或不同。

答案 1 :(得分:2)

相同的元素表示相同的值,而含义不正确。
一种不同的说法是:Definition of an array is a collection of elements *of the same type* stored in adjacent locations.