在易语言中,当数组是一维数组时,它的成员数和下标是一样的,而多维时,就要分清两个命令的区别,特别是某个成员的下标和数组下标是两个截然不同的概念,视频中左做了示范举例。
一、官方文档
取数组成员数
调用格式: 〈整数型〉 取数组成员数 (通用型变量/变量数组 欲检查的变量) - 系统核心支持库->数组操作
英文名称:GetAryElementCount
取指定数组变量的全部成员数目,如果该变量不为数组,返回-1,因此本命令也可以用作检查指定变量是否为数组变量。本命令为初级命令。
参数<1>的名称为“欲检查的变量”,类型为“通用型(all)”,提供参数数据时只能提供变量及变量数组。参数值指定欲检查其成员数目的数组变量或者欲检查其是否为数组的变量。
操作系统需求: Windows、Linux、Unix
取数组下标
调用格式: 〈整数型〉 取数组下标 (通用型变量/变量数组 欲取某维最大下标的数组变量,[整数型 欲取其最大下标的维]) - 系统核心支持库->数组操作
英文名称:UBound
返回指定数组维可用的最大下标(最小下标固定为1)。如果给定变量不为数组变量或指定维不存在,返回 0 。本命令为初级命令。
参数<1>的名称为“欲取某维最大下标的数组变量”,类型为“通用型(all)”,提供参数数据时只能提供变量及变量数组。
参数<2>的名称为“欲取其最大下标的维”,类型为“整数型(int)”,可以被省略。1 表示第一维,2 表示第二维,如此类推。如果省略本参数,默认值是 1。
操作系统需求: Windows、Linux、Unix
二、教程源码
.版本 2
.程序集 窗口程序集_启动窗口
.程序集变量 数组a, 整数型, , "6"
.程序集变量 数组b, 整数型, , "3,5,4,9"
.子程序 __启动窗口_创建完毕
' 数组a = { 2, 3, 9, 6, 45, 67, 89, 632, 1, 7 }
.子程序 _按钮1_被单击, , , 取数组成员数
.局部变量 数组a的成员数
.局部变量 数组b的成员数
数组a的成员数 = 取数组成员数 (数组a)
数组b的成员数 = 取数组成员数 (数组b)
画板1.滚动写行 (“数组 a 的成员数 = ” + 到文本 (数组a的成员数))
画板1.滚动写行 (“数组 b 的成员数 = ” + 到文本 (数组b的成员数) + #换行符 + “-------------------------------------”)
.子程序 _按钮2_被单击, , , 取数组下标
.局部变量 数组a的下标
.局部变量 数组b的下标
数组a的下标 = 取数组下标 (数组a, )
数组b的下标 = 取数组下标 (数组b, 1)
画板1.滚动写行 (“数组 a 的下标 = ” + 到文本 (数组a的下标))
画板1.滚动写行 (“数组 b 的下标 = ” + 到文本 (数组b的下标))
.子程序 _按钮3_被单击
.局部变量 数组, , , "0"
.局部变量 m, 整数型
数组 = { 1, 6, 9, 5, 8, 7, 2, 3, 16, 511, 369, 361 }
.计次循环首 (取数组成员数 (数组), m)
.如果真 (数组 [m] = 8)
跳出循环 ()
.如果真结束
.计次循环尾 ()
信息框 (“511的下标为 ” + 到文本 (m), 0, , )
优酷土豆链接:511遇见易语言教程-21-取数组成员数和取数组下标
优酷全部教程播单:http://i.youku.com/i/UNTU3NDYyODg0/playlists
交流群:521068947
本人QQ: 272586593