首页 易语言 🍓

易语言第二课 - 变量+常量

变量和常量是什么,变量的组成,作用域,静态变量,数组,命名规范

20210323160818

变量

变量是什么?为什么需要变量?

  1. 什么是变量

    • 变量让你能够把程序中准备使用的每一段数据都赋给一个简短、易于记忆的名字。可以通过这个名字来读取写入数据
  2. 打个比喻来解释

    • 拆开《变量》这个词。
    • 变 = 可变 量 = 数据 所以变量 = 可变的数据
    • 比如数学中的π,π对应的值是什么?为什么要叫做π呢?π也就是变量,3.1415926也就是对应的值。
  3. 为什么需要变量?

    • 变量其实就是助记符代记词,可以用很短的一个词来代替很长的数据

变量的组成,作用域

  1. 变量的组成

    • 变量是由:变量名+类型+作用域 组成
  2. 作用域

    • 由小变大:局部变量<程序集变量<全局变量
    • 局部变量:作用域在于子程序内部,生存周期也是子程序的开始子程序的结束
    • 程序集变量:作用域在整个程序集中全部子程序,生存周期是程序集开始(普通程序集没有销毁,程序的结束变量也会消失,但是易语言中的类是可以销毁的)
    • 全局变量:作用域在于整个程序中所有程序集内的全部子程序,生存周期是程序的开始程序的结束

静态局部变量

  • 程序的局部变量可以设置为“静态”类型。所谓“静态”,就是指该变量具有“记忆”功能,对该子程序调用后,该局部变量的值不会被销毁,到下次进入该子程序,它仍然保留上次调用该子程序后的值。普通的子程序变量在每次进入子程序内后都要重新分配内存空间,在退出子程序时自动释放所占用的空间;而“静态”类型的子程序变量跟全局变量和程序集变量一样,在程序启动时就分配了内存空间并初始化(只初始化一次,而不是每次进入子程序都初始化),并且在整个程序运行期间都不释放,所以该类型的变量有“记忆”效应。

20210324004156

就如同上面运行的程序一样,调用静态变量这个子程序三次,调试输出(局_变量1)得到

开始运行被调试程序
* 1
* 2
* 3
被调试易程序运行完毕

数组

  • 计算机处理的数据量往往是很大的,而且通常是同一种数据类型。比如:一堆账号,一堆姓名
  • 易语言中提供的“数组”数据结构允许我们方便地处理这样的数据
  • 定义数组后,可以通过方括号+索引访问对应索引的值

代码

.版本 2
.支持库 spec

.程序集 窗口程序集_启动窗口

.子程序 __启动窗口_创建完毕

数组 ()

.子程序 数组
.局部变量 局_变量1, 整数型, , "0"

局_变量1 = { 1, 2, 3, 4, 5 }
调试输出 (局_变量1 [1])

输出

开始运行被调试程序
* 1
被调试易程序运行完毕

常量

常量是什么?为什么需要常

  1. 常量是在程序编写时定义好的。
  2. 常量是不变的变量
  3. 常量也被称为字面常量直接常量

    • 常量的值是可以直接看到的,因为是在程序编写时直接定义
    • 譬如:666,0,-666 为整数 “我爱你”,“我恨你” 为文本
  4. 为什么需要常量

    • 如果有一个值需要在程序中是固定并且不被修改的话需要用常量,再或者,变量无法直接表达的情况下(有引号的情况下)

命名规范

命名规范

  • 这个命名规范不止限于变量和常量,还包括子程序,参数,类,等等等
    首先先看限制方面:名称的首字母必须为全半角字母或汉字或下划线
  • 无长度限制(尽量短而精简并且明确表达变量的用途)
    可以和其他作用域下的变量重复(重复就会出现变量冲突,尽量保持唯一性)
  • 命名规范:尽量能直接表达出所在域-所属用途-他的类型
    比如:子程序_检查更新 是子程序,并且功能是检查更新

    1. 局_姓名 是局部变量,存储的数据是姓名
    2. 参_姓名 是参数,传递的参数数据是姓名
  • 如果多个地方需要用到这个东西,可以采用统称法,比如

    1. 局_文本
    2. 局_数据

命名方式

  1. 匈牙利命名:

开头字母用变量类型的缩写,其余部分用变量的英文或英文的缩写,要求单词第一个字母大写。

m_lpszStr 表示指向一个以0字符结尾的字符串的长指针成员变量。

  1. 驼峰式命名法(小驼峰式命名法):
    第一个单词首字母小写,后面其他单词首字母大写。

amdYes = 0

  1. 帕斯卡命名法(大驼峰式命名法):
    每个单词的第一个字母都大写。

AmdYes = 0

  1. 下划线命名法:
    每个词语间以下划线作为分割。

amd_yes = 0




文章评论

目录