菜鸟易语言基础知识【不完全版】

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

你好推荐给你一个初学者学习易语言的好地方“菜鸟易语言”在百度知道搜索下就知道啦内部有入门-进阶的全套教程推荐新手观看语言歪歪频道ID:662510qq群:135655631论坛:cneyy.5d6d.com==================================================菜鸟易语言-荣誉团队此答案来源于→菜鸟易语言,要学习的可百度知道菜鸟易语言菜鸟易语言→专业易语言技术交流学习平台我们的口号是→帮助别人等于帮助自己第一章、基础知识1.1基本数据类型1.2变量和常量1.2.1变量和常量的命名1.2.2变量的作用范围1.2.3静态变量1.2.4变量的初始值1.3运算符1.3.1运算符的优先级1.4流程控制1.4.1如果、如果真、判断1.4.2判断循环、循环判断1.4.3计次循环、变量循环1.4.4到循环尾、跳出循环1.4.5返回、结束1.5子程序(函数)1.5.1子程序参数(参考、可空)1.5.2子程序的递归1.5.3子程序的静态局部变量1.6自定义数据类型1.6.1[例]黑客帝国屏保1.6.2自定义数据类型的内存存储1.7数组1.7.1数组的维数1.7.2数组的排序1.7.2.1冒泡排序1.7.2.2选择排序1.7.2.3插入排序1.7.2.4快速排序1.7.2.5自定义数据类型数组的多级排序1.7.3[例]扫雷游戏第二章、字节集《将字节集显示为十六进制》《文件分割机》《数据隐藏》《电子贺卡》《配置信息写入exe文件》《exe文件捆绑》《exe文件的自校验》WindowsAPI和动态链接库枚举窗口,枚举进程使窗口可移动窗口子类化动态菜单动态组件文件拖放读取dll中的资源-扑克牌图片读DOS程序执行结果自制皮肤远程线程。。。。。文件系统模拟资源管理器shell菜单文件格式《编写自己的文件格式》易语言模块编程注册表文件关联、命令行处理、文件右键菜单枚举注册表注册表模拟器图像处理取图像宽度、高度取像素字节集各种图像运算方法面向对象编程类、封装、属性、行为、继承、多态性矢量图形(面向对象程序设计)CAD系统EMF文件的读写OpenGL三维图形编程DirectX游戏编程网络编程Web服务器聊天程序远程控制邮箱登录器IP追捕天气查询数据库编程界面编程使用《易容大师》进行界面编程第一章、基础知识1.1基本数据类型计算机程序是用来采集和处理现实世界的数据的,而现实世界的数据又是多样的,比如数量、名称、状态、温度、时间、图像等等,计算机程序要处理这些数据,那么其编程语言也必须规定相应的类型,不同的数据类型用来保存不同类型的数据。易语言中的基本数据类型和其存储的信息如下表所示:表1.1易语言中的数据类型数据类型名能存储的数据初始值字节型数值型,表数范围:[0,255],占用1个字节的存储空间。0短整数型数值型,表数范围:[-32768,32767],占用2个字节的存储空间。0整数型数值型,表数范围:[-2147483648,2147483648],占用4个字节的存储空间。0长整数型数值型,表数范围:[-9223372036854775808,9223372036854775807],占用8个字节的存储空间。0小数型数值型,表数范围:38104.3,占用4个字节的存储空间。0双精度小数型数值型,表数范围:308107.1,占用8个字节的存储空间。0逻辑型表示真假、男女等具有二值性的数据,占用4个字节的存储空间。假日期时间型表示年月日时分秒的数据,占用8个字节的存储空间。*文本型用来表示描述性的文字、符号等的数据。易语言的文本行变量可以大于64KB。“”字节集可用来表示任何数据,比如图片、视频、声音等,其表示的数据的意义取决于数据的设计者。{}子程序指针表示子程序在内存中的地址,这是专门为编程而设的数据类型。占用4个字节的存储空间。0*日期时间型的初始值是1899年12月30日0时0分0秒在上表中我们主要看一下数值型的数据类型,因为这种类型的数据我们接触到最多的。我们看到,长整数型的数据表示的整数范围最大,而双精度型的数据表示的范围也大,精确度也最高,那为什么还需要有比他们范围小的数据类型呢?呵呵,这正如尺有所短,寸有所长。首先,它们在内存和磁盘中占用的空间不同,对于字节型的数据,只占用1个字节,而长整型的数据则占用8个字节之多,对于要表示人的年龄这样的数据,字节型经济又实惠——人的年龄不会是负数,也不可能超过255岁;其次,运算速度不一样。我们知道,当前主流的计算机都是32位的,在内存中数据是4字节对齐的,那么长度为4字节的数据,在运算时和在内存中移动时速度是最快的,如果你的程序不吝惜内存,而更在乎速度的话,就尽量采用长度为4字节的数据类型吧。字节集数据类型是其他的编程语言中所没有的,是易语言的一个很有特色的数据类型,在文件处理、类对象的持久化中有重要用途,以后会有专门章节讲述。1.2变量和常量所谓变量,就是其中保存的数据可以变化的一个数据容器(在易语言的早期版本中,变量都叫容器)。简单地说,变量就是在内存中保存数据的地方,而其中的数据是可以随时修改的。顾名思义,常量就是恒定不变的量,其中的数据不能被修改。如果在程序中有语句修改了常量的值,编译器会报错。在编辑源代码的任何时候,可以通过点选菜单〔插入常量〕来插入常量。在易语言中,要使用某个常量,必须在前面加上“#”号。有同学可能会问:“既然常量的值是不可改变的,那么要常量有什么意义呢?在源代码中直接使用其值不就行了吗?要定义一个常量,还要想心思取个名字,不是多此一举吗?”其实不然,使用常量有很多好处:1.简化代码输入。比如你要写个与数学相关的程序,要大量使用π,我们知道π=3.1415926535897932384626433832795,每次在使用π的时候,输入这么一长串数字是不是很麻烦?容易输错且不说,读代码的时候还不知其含义,所以我们不如定义一个常量“派”,这样写代码和读代码都方便多了,运行时速度也快,最后编译成exe文件占用的存储空间也少。2.使代码更易于阅读。对于键盘上的每一个按键,都有一个数字型的扫描码,比如空格键的代码是32,回车是13,如果不使用常量,你如何记得住它们?幸好易语言编程环境已经给我们定义好了这些常量,我们可以直接使用。随着编码的深入,你会更多地发现常量有时很好的——不要怕麻烦,巧妙地使用常量,有时会有意想不到的效果。1.2.1变量和常量的命名在易语言中,对常量名、变量名和函数名的等需要命名的地方有一定的命名规则,这些名称的命名规则为:名称的首字母必须为全半角字母或汉字,其它字符必须为全半角字母、全半角数字或者汉字。虽然名称中允许半角字符“_”存在,但它被保留为系统专用,因此建议不要使用。与其它的编程语言相比,易语言的命名规则有以下特点:·无长度限制,用户可以尽情地使用长名称来进行名称描述;·永远不会与易语言的关键字产生冲突。譬如:现已存在“如果”命令,但用户仍然可以定义一个名称为“如果”的变量,两者之间不会产生任何冲突。虽然如此,最好还是不要以关键字来命名,因为这样的代码难于阅读和理解。这里顺便说一下“关键字”的概念。在计算机语言中,有些词汇和符号是作为语言的某种特殊的用途而使用的,比如类型定义、流程控制、算术逻辑运算符、预处理指令、编译指令等,在其他的编程语言中,这些词汇和符号是不能作其他用的,比如不能作为变量名。这就好比我的名字是曾劲松,那我生的孩子我能给他取名“曾祖父”吗?不能,因为“曾祖父”就是一个关键字,已经有其特定的用途了。再说一遍,在易语言中虽然可以用关键字来命名变量、常量和函数名等,但建议不要这样——当然,中国的考试有时候会刁钻古怪,难免以后易语言进入课堂而有老师出此偏门的考试题目——嘿嘿,话题扯远了。1.2.2变量的作用范围在易语言中,常量是全局范围的,也就是说,在程序的任何地方都可以使用该常量。而变量的使用就没有那么随意了,根据变量的作用范围不同,变量可以分为全局变量、程序集变量和和局部变量。全局变量的值在程序的任何地方都可以访问和修改,这虽然方便了编程,但实际上在编程的过程中,如果使用了太多的全局变量,程序写复杂了之后,很容易导致思维的混乱,因为你往往不知道你在程序的哪里修改了该变量。最后往往程序虽然通过了编译,运行的结果却常常莫名其妙。所以,记住一条忠告:能够不使用全局变量,就不要使用,全局变量越少越好。要插入全局变量,请按键盘快捷键[Ctrl]+[G],也可以点选菜单〔插入全局变量〕。程序集变量是在当前程序集的范围内都可以访问的变量,它的范围比全局变量要小些。易语言中的程序集,是指一系列相关子程序和变量的有机组合,说简单点,你可以把程序集想像成资源管理器中的文件夹。一般来说,一个窗口对应一个程序集,当然也有独立于窗口的程序集,关键在于你如何组织你的代码。对于一个有窗口的程序集,你可以把程序集变量看成该窗口的“额外”的属性,这个小技巧在编程时很有用。除去范围小些外,程序集变量的使用和全局变量差不多。所以,程序集变量也要谨慎使用。要插入程序集变量,请将光标放置在程序集名的后面,然后按回车键。局部变量表示在当前子程序(也称函数)的范围内可以访问的变量,它的作用范围最小,也是使用得最多的变量。要在当前子程序内加入局部变量,请按[Ctrl]+[L]。在本书中,对于变量和子程序参数的命名有一个约定,那就是:全局变量都以“全”字开头,程序集变量都以“集”字开头,函数参数都以“参”字开头,类的成员数据都以“私”字开头。有了这个约定之后,我们一看变量名就知道它是在何处定义的,方便编写和阅读源代码。1.2.3静态变量只有子程序中的变量可以指定为“静态”类型的变量,所以有关静态变量请参看“子程序”一节。1.2.4变量的初始值变量的初始值是值变量在声明后未给其赋值的情况下变量里面存储的内容。具体的初始值请参见表1.1。1.3运算符运算符就是用来进行运算的符号。在计算机中,运算又分为算术运算、逻辑运算、位运算和赋值运算。算术运算用来计算加减乘除求余数等,这些我们在数学中已经学过了。逻辑运算是进行是非判断以及是非组合的运算,其基本运算规则为:非真为假,非假为真;真且真为真,真且假为假,假且假为假;真或真为真,真或假为真,假或假为假。位运算是对数据位进行操作。我们知道,在计算机内部,所有的数据都是以二进制表示的,比如字符“A”,其ASCII码为65,二进制为1000001,二进制中只有两个数学符号:0和1,数据中的每一个1或0,叫做一位,位运算正是针对这些数据位进行操作的。在易语言中,位运算符以函数的形式存在,其基本规则如下:位与(1,1)=1,位与(1,0)=0,位与(0,0)=0,规则为“有0则0”;位或(1,1)=1,位或(1,0)=1,位或(0,0)=0,规则为“有1则1”;位异或(1,1)=0,位异或(1,0)=1,位异或(0,0)=0,位异或(0,1)=1,规则为“同0异1”;位取反(1)=0,位取反(0)=1;左移是将所有的位左移指定的位数,移出位的被丢掉,右边补0,比如左移(10000012,3)=00010002,这里3是十进制数,其他的是二进制数。同理,右移是将所有的位右移,移出的位被丢掉,左边补0。赋值运算是指将值赋给一个或多个变量。易语言中所有的运算符如下表所示:表1.2易语言中的运算符运算符类型运算符名中文操作符号英文操作符号位运算符位与位与band位或位或bor位取反位取反bnot位异或位异或bxor左移左移shl右移右移shr算术运算符负--相乘×*相除÷/整除\\求余数%%或Mod相加++相减--逻辑运算符大于>小于<等于==或==不等于≠或!=大于或等于≥=小于或等于≤=约等于≈?=且且and或&&或或or或||赋值运算符赋值==1.3.1运算符的优先级考虑这样一个数学算式:8+3*4^2,它的结果是如何计算的呢?从数学知识中,我们知道要先算4的平方,再与3相乘最后加上8,而不是简单地

1 / 81
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功