当前位置:首页 > 内存 > 正文

数组在内存中占一段连续的存储区

  • 内存
  • 2024-05-05 04:32:34
  • 2709

一、数组a的维度大小是[10]字节,表示什么含义?

[10]表示字符数组a的维度大小

表示数组a在内存中占用10(char)个空间。

此外,作为[10]中定义的字符数组,实际上只使用了9个空格来存储字符,最后一个空格被保留用于存储字符串结束符号'\0'。

扩展信息:

数组:

在C语言中,数组是构造数据类型。一个数组可以分解为多个数组元素,这些元素可以是基本数据类型,也可以是构造类型。因此,根据数组元素的类型,数组可以分为数值数组、字符数组、指针数组、结构体数组等多种类别。

关于变长数组(VLA)问题:原来的C89标准不允许变长数组,但是在C99标准中,增加了对VLA的支持,但是支持编译。很多处理器,而且由于堆栈溢出安全问题,没有多少人敢使用这种变长数组,因此在C11标准中将其定义为可选实现特性。

如果您有其他语言的编程经验,您一定熟悉数组的概念。借助数组,您可以引用一系列具有相同名称的变量并以数字方式(索引)识别它们。

在许多情况下,使用数组可以缩短和简化程序,因为可以使用索引值设计循环来有效地处理多种情况。数组有上下限,数组的元素在上下限内连续。由于VisualBasic为每个索引值分配空间,因此不得声明一个不切实际的大数组。

这里的矩阵是在程序中声明的一系列变量。它们与控件数组不同,件数组是在设计时通过设置控件的Index属性来指定的。与控制数组不同,变量数组始终是连续的,数组元素不能加载到数组的中间或从数组的中间加载出来。

数组的所有元素都具有相同的数据类型(在C、C++、Java和Pascal中都是如此。但并非所有涉及数组的情况都是如此。例如,VisualFoxpro中的数组不是这不是任何此类要求)。

当然,当数据类型为Variant时,每个元素可以包含不同类型的数据(对象、字符串、值等)。可以声明所有基本数据类型的数组,包括用户定义类型和对象变量。

参考来源:-数组