您的位置:首页 > 其它

FreeBASIC学习笔记——第05章 数组

2017-12-16 09:44 204 查看
        数组是变量的特殊类型,作为多个值的容器或元素。数组可以存储任何类型的元素,并且其所有元素共享相同的类型。这些元素通过数组中的位置来读取或写入。数组有大小,它们等于在任何给定时间存储的元素的数量。静态在其整个生命周期内具有不变的大小,而动态数组的大小可以动态更改。数组使用操作符“()”来访问数组中的各个元素。

5.1 静态数组的定义

        静态数组一旦定义后就不能改变范围,可以使用Extern、Static和Dim来声明。其中LBound 是指下限或最小索引。UBound 是指上限或最大索引。如果未指定下限,则默认情况下为0,除非使用Option Base语句声明数组的下标。

        数组可以是一维的,也可以是多维的。一维数组可以被认为是简单的一行元素。数组也可以有多个维度,使用两个或多个位置访问数组的单个元素。二维数组使用两个位置:一个行和一个列位置来引用单个元素,如网格或表格。三维数组使用三个位置:一个行、一个列和一个深度来引用单个元素,如立方体。四维数组可以被认为是一个或多个三维数组等等。多维数组的声明就像一维数组,只不过指定了多个下限和上限范围。多维数组的最大维数为8维。数组的初始化赋值可以用“{}”包含所需赋值数据。
语法:



例如:一维数组



例如:多维数组



5.2 动态数组        

        动态数组可以改变大小,因此编译器选择在空闲存储器中为数组元素赋值内存。动态数组使用Extern、Static、Dim和ReDim声明。用Dim声明一个空的动态数组后必须用ReDim调整动态数组的大小,也可以直接用ReDim声明一个动态数组。Preserve关键字用与声明数组是否保存调整之前的数据,没有Preserve关键字则不保存数据。

        LBound(数组,维度)和UBound(数组,维度)函数可以检索数组维度的下限和上限。如果未指定维度则默认为第一个维度的下限或上限。

        Erase函数用于擦除数组中的数据或释放分配给动态数组的内存。

语法:定义空数组



语法:定义一个动态数组



语法:调整动态数组大小



例如:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息