一囫一易语言图解教程一 第6章深入学习变量 在实际编程过程中,经常用变量 交换临时的数据或资源,前面已经了 解了变量的概念,这一章来学习静态 变量、变量数组及动态管理变量。 本章学习内容 6.1认识静态变量 6.5动态管理数组变量 62静态变量的应用 66定时提醒小程序练习 6.3变量的命令操作 6.7课后练习 64变量数组的定义 合理的运用变量在编程过程中,能简化或优化程序代码运行的效率。全 局变量、程序集变量或局部变量,建立时默认为非静态变量,只有在子程序 里局部变量才有“静态”属性设置 116
116 在实际编程过程中,经常用变量 交换临时的数据或资源,前面已经了 解了变量的概念,这一章来学习静态 变量、变量数组及动态管理变量。 合理的运用变量在编程过程中,能简化或优化程序代码运行的效率。全 局变量、程序集变量或局部变量,建立时默认为非静态变量,只有在子程序 里局部变量才有“静态”属性设置。 第 6 章 深入学习变量 本章学习内容: 6.1 认识静态变量 6.5 动态管理数组变量 6.2 静态变量的应用 6.6 定时提醒小程序练习 6.3 变量的命令操作 6.7 课后练习 6.4 变量数组的定义
一第6深入学习爽量⑦” 61认识静态变量 在子程序里面建立两个变量。分别 命名为“静态变量”和“非静态变量”, 用鼠标在静态变量的“静态”属性栏里 点击,出现“√”符号,这样,静态变 量就具有了静态属性 静态”属 性栏里没有 “√”符号,说 明该变量为非 静态变量。 1.静态变量与动态变量的区别 非静态变量在其所在子程序开始被执行前自动分配存储空间并初始化, 在所在子程序执行完毕后自动释放所分配的存储空间,也就是说,变量的存 储空间仅在其所在子程序执行过程中存在:而静态变量则保留现行内容以供 ②2.全局变量和程序集变量具有“静态”属性吗? 虽然在全局变量和程序集变量里没有设置“静态”选项,但是全局变量 一旦赋值,变量数据就占据了指定的存储空间,并在程序运行期间永久存在 仅在应用程序启动运行前被初始化一次,只有程序结束,存储空间才被释放。 程序集也是一样,在程序集里面,程序集变量一旦赋值,只有程序集退出时, 存储空间才被释放。 117
117 6.1 认识静态变量 在子程序里面建立两个变量。分别 命名为“静态变量”和“非静态变量”, 用鼠标在静态变量的“静态”属性栏里 点击,出现“√”符号,这样,静态变 量就具有了静态属性。 “静态”属 性 栏里没有 “√”符号,说 明该变量为非 静态变量。 1.静态变量与动态变量的区别: 非静态变量在其所在子程序开始被执行前自动分配存储空间并初始化, 在所在子程序执行完毕后自动释放所分配的存储空间,也就是说,变量的存 储空间仅在其所在子程序执行过程中存在;而静态变量则保留现行内容以供 下次继续使用。 2.全局变量和程序集变量具有“静态”属性吗? 虽然在全局变量和程序集变量里没有设置“静态”选项,但是全局变量 一旦赋值,变量数据就占据了指定的存储空间,并在程序运行期间永久存在 仅在应用程序启动运行前被初始化一次,只有程序结束,存储空间才被释放。 程序集也是一样,在程序集里面,程序集变量一旦赋值,只有程序集退出时, 存储空间才被释放
一囫一易语言图解教程一 62静态变量应用 下面跟着实例来演示静态变量的应用。 ①新建一个易语言程序,加入一个画板和一个按钮组件,更改画 板的“边框”属性为“凹入式”,“画板背景色”属性为白色 E程序E编辑y查看工插入B数据库D调式B运行工工具L窗口B帮助 回②品其的m日田 同卜 国板1〔画板 基都件 回国 可停日焦点 幽蠱]圖 护展链件 外部事件组件 数据类型为:整数型,注意如果“自动玉画”黑性为真,不支持通明色 ②双击按钮进入程序设计界面,在“按 钮1被单击”子程序里面建立两个整数型 变量,分别命名为“静态变量”和“非静 态变量”,在静态变量的“静态”属性栏里 用鼠标点击,出现“√”符号,使其具有 “静态”属性。 窗口程序集名 备注 窗口程序集 子程序名返回值类型公开备注 按钮1被单击
118 6.2 静态变量应用 ②双击按钮进入程序设计界面,在“_按 钮 1_被单击”子程序里面建立两个整数型 变量,分别命名为“静态变量”和“非静 态变量”,在静态变量的“静态”属性栏里 用鼠标点击,出现“√”符号,使其具有 “静态”属性。 下面跟着实例来演示静态变量的应用。 ①新建一个易语言程序,加入一个画板和一个按钮组件,更改画 板的“边框”属性为“凹入式”,“画板背景色”属性为白色
一第6深学习爽最一 ③顺序输入以下程序代码。 画板1滚动写行(静态变量) 画板1滚动写行(非静态变量) 静态变量=静态变量+1 非静态变量=非静态变量+1 按钮1被单击 变量名类型静态数组备注 静态变量整数型 非静态变量整数型 ν画板1.液动写行静态变量) 画板1.液动写行(非静态变量) 静态变量=静态变量+1 ↓+静态量排态液量下1 ④按F5运行程序,连 续单击3次按钮。在画板 得出如下结果。 0 1 2 0 从结果可以看出,整数型静态变 量和非静态变量的初始化值都是0, 子程序结束后非静态变量的数据清 空,而静态变量的数据依旧保留
119 ③顺序输入以下程序代码。 画板 1.滚动写行 (静态变量) 画板 1.滚动写行 (非静态变量) 静态变量 = 静态变量 + 1 非静态变量 = 非静态变量 + 1 ④按 F5 运行程序,连 续单击 3 次按钮。在画板 得出如下结果。 0 0 1 0 2 0 从结果可以看出,整数型静态变 量和非静态变量的初始化值都是 0, 子程序结束后非静态变量的数据清 空,而静态变量的数据依旧保留
一囫一易语言图解教程一 63变量的命令操作 变量建立好并指定了数据类型后, 如果不进行赋值操作,变量会默认初始 化数值 在系统核心支持库里面有变量两个 操作命令 连续賦值 子程序名返回值类型公开 备注 按钮1被单击 量名类型静态数组备注 国数值转换 量1 变量2文本型 输入“赋值”命令按回车,代码行 会变为“??=??”,在易语言里面赋 值操作的符号是“=”,后者数据赋予给 前者。 可以直接输入变量 名加“=”加变量值。如: 变量1=100 匚子程序名遞回值类型公开备注 按钮1被单击 变量名类型静态数组备注 变量1整数型 变量2文本型 变量1=100
120 6.3 变量的命令操作 变量建立好并指定了数据类型后, 如果不进行赋值操作,变量会默认初始 化数值。 在系统核心支持库里面有变量两个 操作命令。 输入“赋值”命令按回车,代码行 会变为“??=??”,在易语言里面赋 值操作的符号是“=”,后者数据赋予给 前者。 可以直接输入变量 名加“=”加变量值。如: 变量 1=100 变量 2=“易语言
一第6深学习爽最一 加入文本型变量3,输入“连续赋值”命令, 第一个参数是用作赋于的值或资源,第二个参数是被 赋值的变量或变量数组,可以被重复添加。 连续赋值(“全中文全可视易语言”,变量2,变量3) 子程序名返回值类型公开 按钮1_被单击 变量名类型静态数组备注 运行程序后,变量2 和变量3的值都等于“全 变量2文本型 变量3文本型 中文全可视易语言”。 这里不可以用连续 变量2=“易语言 6变量数④赋值命令给变量1和变量 +连值(“全中文到可视易语言”,量2,卖 2赋值,因为它们是不同 类型的变量。 请打开上一章所完成的程序,将 “按钮1被单击”子程序中的内容全 部删除,然后进行以下输入操作: ①加入一个名为 单维变量的整数型 变量,在其数组属 性中输入“3”,表 匚子程序名返回值类型公开备注 明此变量为一个单 按钮1被单击 维数组,共有3个 类型静态数组备注 整数型 12, 2N ◇ 121 ②加入一个名为多维变量的整数型变量,在其数组属性中输入
121 6.4 变量数组的定义 请打开上一章所完成的程序,将 “_按钮 1_被单击”子程序中的内容全 部删除,然后进行以下输入操作: ①加入一个名为 单维变量的整数型 变量,在其数组属 性中输入“3”,表 明此变量为一个单 维数组,共有 3 个 成员。 ②加入一个名为多维变量的整数型变量,在其数组属性中输入 “2,2”,表明此变量为一个二维数组,共有 4 (2 × 2 的结果) 加入文本型变量 3,输入“连续赋值”命令, 第一个参数是用作赋于的值或资源,第二个参数是被 赋值的变量或变量数组,可以被重复添加。 连续赋值 (“全中文全可视易语言”, 变量 2, 变量 3) 运行程序后,变量 2 和变量 3 的值都等于“全 中文全可视易语言”。 这里不可以用连续 赋值命令给变量1和变量 2 赋值,因为它们是不同 类型的变量
一囫一易语言图解教程一 ③顺序输入下列语句行 单维变量[1]=100 画板1.滚动写行(单维变量[1],多维变量[2][1]) 画板1.滚动写行(多维变量[3]) 多维变量[4]=300 画板1.滚动写行(多维变量[2][2]) 多维变量 单雏变量[1 1=100 多维变量[2][1]=200 画板1.液动写行(单维变量[1],多维变量[2][]) 画板1.液动写行(多维变量[3] 多维变量[4]=300 +画板德动写(推量Et ④按F5运行程序,连 续单击按钮。在画板得出 如下结果。 100 200 300 通过上面的程序可以知道 数组变量可以有多个成员变量,每个成员变量等同于一个 单独变量。各成员变量的引用方法为: 数组变量名+"[”+从1开始的成员位置+"”+ 譬如上面的单维变量,它有“单维变量[1]”“单维变量[2]”、 单维变量[3]”3个成员。 多维变量有“多维变量[1][1]”、“多维变量[1][2]”、“多
122 ③顺序输入下列语句行: 单维变量 [1] = 100 多维变量 [2] [1] = 200 画板 1.滚动写行 (单维变量 [1], 多维变量 [2] [1]) 画板 1.滚动写行 (多维变量 [3]) 多维变量 [4] = 300 画板 1.滚动写行 (多维变量 [2] [2]) ④按 F5 运行程序,连 续单击按钮。在画板得出 如下结果。 100 200 200 300 通过上面的程序可以知道: 数组变量可以有多个成员变量,每个成员变量等同于一个 单独变量。各成员变量的引用方法为: 数组变量名 + “[” + 从 1 开始的成员位置 + “]” + ...... 譬如上面的单维变量,它有“单维变量 [1]”、“单维变量 [2] ”、 “单维变量 [3] ”3 个成员。 多维变量有“多维变量 [1] [1] ”、“多维变量 [1] [2] ”、“多 维变量[2] [1] ”、“多维变量[2] [2]”四个成员
一第6深学习爽最一 该表是 将经过上述 量名 初始值运行后的值 运算后,各变单维变量 量变更后的单维变量p 数值。 入单维变量 多维变量[] 多维变量[][2] 多维变量[2][] 0000 多维变量[2][2] 300 多维变量的成员也可以使用单维的方式来引用。譬如上面的“多 维变量[3]”等同于“多维变量[2][1]”,“多维变量[4]”等同于 “多维变量[2][2]”。此方法可用来遍历数组的所有成员。 请继续输入进行以下操作 (1)加入一个名称为变量1的整数型变量。 (2)添加以下程序代码 计次循环首(取数组成员数(多维变量),变量1) 画板1滚动写行(多维变量[变量1]) 计次循环尾() 变量名类型静态数组备注 单维变量整数型3 多继变量整数型22 单维变量[1]=100 多维变量[2][1=200 画板1滚动写行单维变量[1.多维变量[2][1]) ν画板1.滚动写行(多维变量[3])
123 变量名 初始值 运行后的值 单维变量 [1] 0 100 单维变量 [2] 0 0 单维变量 [3] 0 0 多维变量 [1] [1] 0 0 多维变量 [1] [2] 0 0 多维变量 [2] [1] 0 200 多维变量 [2] [2] 0 300 该 表 是 将经过上述 运算后,各变 量 变更后 的 数值。 多维变量的成员也可以使用单维的方式来引用。譬如上面的“多 维变量 [3]”等同于“多维变量 [2] [1] ”,“多维变量[4] ”等同于 “多维变量 [2] [2] ”。此方法可用来遍历数组的所有成员。 请继续输入进行以下操作: (1)加入一个名称为变量 1 的整数型变量。 (2)添加以下程序代码。 计次循环首 (取数组成员数 (多维变量), 变量 1) 画板 1.滚动写行 (多维变量[变量 1]) 计次循环尾 ()
一囫一易语言图解教程一 从运行结果可以看 出,此段程序可以顺序显 示出多维变量中所有成员 的内容。其中前4行是第 次的运行结果,后4行 是刚才输入新程序后的运 行结果, 量名类型静态数组备注 单维变量整数型 多维变量整数型 2, 整数型 单维变量[1]=100 多维变量[2][]=200 →画板1.滚动写行单维变量[1].多维变量[2][1 画板1.液动写行(多维变量[3] 维变量[4]=300 画板1.液动写行(多维变量[2][2]) 母计次循环首诹数组成员数(单维变量),变量1 +;画板御与弹维量小 莓计次循环尾0 再试一试将上面添加的程序段中的多维变量改为单维变量。 计次循环首(取数组成员数(单维变量),变量1) 画板1滚动写行(单维变量[变量1]) 计次循环尾() 运行后查看 结果
124 从运行 结果可 以看 出,此段程序可以顺序显 示出多维变量中所有成员 的内容。其中前 4 行是第 一次的运行结果,后 4 行 是刚才输入新程序后的运 行结果, 再试一试将上面添加的程序段中的多维变量改为单维变量。 计次循环首 (取数组成员数 (单维变量), 变量 1) 画板 1.滚动写行 (单维变量[变量 1]) 计次循环尾 () 运行后查看 结果
第6章深入学习变量— 前面已说过了数组变量的每个成员 可以当成单个变量应用,但是每个成员 的数据类型必须相同。如果数组变量是 整数型,里面对应的每个成员也必须是 整数型,否则变量赋值时会提示错误 6.5动态管理数组变量 系統核心支持库 的数組排序 数组清零 国拼音处理 中国文本操作 下面将继续讲述 如何动态管理数组变 量,它是易语言的高级 特性之 在系统核心支持 库下有一组数组操作 命令,我们通过一个简 单的例子来了解它们 ①在窗体上创 动态显示文字 建一个按钮组件。 把其宽度拉长,更 改窗口标题为“动 态显示文字
125 6.5 动态管理数组变量 前面已说过了数组变量的每个成员 可以当成单个变量应用,但是每个成员 的数据类型必须相同。如果数组变量是 整数型,里面对应的每个成员也必须是 整数型,否则变量赋值时会提示错误。 下面将继续讲述 如何动态管理数组变 量,它是易语言的高级 特性之一。 在系统核心支持 库下有一组数组操作 命令,我们通过一个简 单的例子来了解它们。 ①在窗体上创 建一个按钮组件。 把其宽度拉长,更 改窗口标题为“动 态显示文字