吾爱汇编

 找回密码
 立即注册

QQ登录

绑定QQ避免忘记帐号

查看: 820|回复: 3

[易语言] 【变量的权限类型】

[复制链接]
书香 发表于 2023-5-22 00:45 | 显示全部楼层 |阅读模式

本帖最后由 书香 于 2024-2-10 04:26 编辑

易语言变量有3种,全局变量,程序集变量,局部变量

局部变量就是只在子程序内部有效
程序集就是只在当前程序集有效(同一个窗口或程序集下的子程序可以共同调用)
全局变量就是在全局有效(多个窗口或程序集之间任意子程序可以共同调用)

程序集变量和全局变量在使用上差别不大,重点就是局部变量



局部变量最大的特点:
子程序被调用时当场创建,当场释放

比如我们写一个软件,统计按钮被单击的次数
错误写法:

  
窗口程序集名保 留  保 留备 注
窗口程序集_启动窗口   
子程序名返回值类型公开备 注
_按钮1_被单击  
变量名类 型静态数组备 注
单击次数整数型  
单击次数 = 单击次数 + 1
调试输出 (单击次数)


这种写法,调试输出的值始终为1,根据前面课程的讲解,变量在“=”右边表示读取,所以单击次数+1=0+1(单击次数是整数型的变量,初始值为0),
子程序内部的变量是相互独立的,也就是说就算该子程序被同时调用多次,彼此之间也是不会影响的,理解这句话很重



正确写法:
  
窗口程序集名保 留  保 留备 注
窗口程序集_启动窗口   
变量名类 型数组备 注
单击次数整数型  

子程序名返回值类型公开备 注
_按钮1_被单击  
单击次数 = 单击次数 + 1
调试输出 (单击次数)


所以这种写法需要使用程序集变量或全局变量
总结:
当多个子程序需要共同对某个变量进行操作时,就需要使用程序集变量或全局变量

难点:

全局变量就是需要多个窗口调用同一变量时需要使用到,这种情况大家可能想不出来,那我们举个例子:
比如我们使用某个软件时,在大窗口点击删除卡密“aaa”,结果弹出一个小窗口,提示是否确定删除用户“aaa”,小窗口怎么知道我们要删除的用户是“aaa”,我们是在大窗口操作的呀,这说明他们使用了全局变量,我们选择的用户信息存储到一个全局变量中,所以我们在大窗口点击时,全局变量存储了这个用户信息,在小窗口中可以读取,出来这下理解了吗?

(点击返回课程目录https://www.52hb.com/thread-58658-1-1.html

评分

参与人数 4HB +3 THX +2 收起 理由
学编程的闹钟 + 1
消逝的过去 + 1
sjtkxy + 1 + 1
花盗睡鼠 + 1 [吾爱汇编论坛52HB.COM]-学破解防破解,知进攻懂防守!

查看全部评分

吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
头像被屏蔽
sjtkxy 发表于 2023-5-28 04:28 | 显示全部楼层
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
浅酌◇咖啡 发表于 2023-6-16 15:28 | 显示全部楼层

感谢大佬,学习
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
2819485765 发表于 2023-8-5 17:14 | 显示全部楼层
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

警告:本站严惩灌水回复,尊重自己从尊重他人开始!

1层
2层
3层
4层

免责声明

吾爱汇编(www.52hb.com)所讨论的技术及相关工具仅限用于研究学习,皆在提高软件产品的安全性,严禁用于不良动机。任何个人、团体、组织不得将其用于非法目的,否则,一切后果自行承担。吾爱汇编不承担任何因为技术滥用所产生的连带责任。吾爱汇编内容源于网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除。如有侵权请邮件或微信与我们联系处理。

站长邮箱:SharkHeng@sina.com
站长QQ:1140549900


QQ|RSS|手机版|小黑屋|帮助|吾爱汇编 ( 京公网安备11011502005403号 , 京ICP备20003498号-6 )|网站地图

Powered by Discuz!

吾爱汇编 www.52hb.com

快速回复 返回顶部 返回列表