下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、一、常量常量 (也称常数 ) ,是在程序运行期间其值始终保持不变的量。注意 不是常量。定义常量的语法格式: Public|PrivateConst 常量名 As 数据类型 = 表达式 Const 前不能使用 Dim在窗体的通用声明处不能使用 Public 定义常量、定长字符串、数组定义常量的语句可以在过程内部,也可以在通用声明处= 后边的表达式不能是函数二、变量定义变量的语法格式: Dim|Private|Static|Public 变量名 As数据类型 ,变量名 As 数据类型 使用 Dim|Private|Static|Public 定义变量后会将变量进行初始化使用 Dim 定义变量的语句
2、可以在过程内,也可以在通用声明处;使用static 定义变量的语句只能在过程内;使用public 、 private 定义变量的语句只能在通用声明处在过程内部使用dim 定义的变量是局部的过程级的变量,即该变量的生命周期和作用域很小。其作用域为本过程,即只在本过程中能用,出了本过程就不能使用其值。其生命周期为从该变量定义的位置开始变量在内存中存在,它所在的过程结束(遇到End Sub)该变量就从内存消失在通用声明处用Dim 定义的变量是模块级的变量;其作用域为本模块, 即在本窗体或模块的所有过程中都能使用该变量,在其他窗体或模块中不能使用该变量的值;其生命周期为从该变量定义的位置开始变量在内存
3、中存在,整个程序结束(点击结束按钮或点击窗体上的关闭按钮)该变量才从内存消失使用 static 定义的变量是局部的静态变量。其作用域为本过程(同局部的dim 定义的变量);其生命周期为从该变量定义的位置开始变量在内存中存在,整个程序结束(点击结束按钮或点击窗体上的关闭按钮)该变量才从内存消失使用 private 定义的变量是模块级的变量,其作用域和生命周期同模块级的dim 定义的变量使用 public 定义的变量是全局变量,其作用域为整个程序,即在整个程序的所有窗体或模块的所有过程中都可以使用此变量(但是注意,如果是在窗体的通用声明处定义的public 类型的变量,则在其他窗体或模块使用该变量
4、时需加上窗体的名字);其生命周期为从该变量定义的位置开始变量在内存中存在,整个程序结束(点击结束按钮或点击窗体上的关闭按钮)该变量才从内存消失三、数组数组是一组按一定顺序排列的数据的集合,数据的类型可以不相同,数组的维数不得超过60 维1. 静态数组定义静态数组的语法格式:public|private|static|Dim数组名 ( 下界 To 上界 ) As数据类型 若省略下界时,表示下标的取值是从0 开始,等价于 “0 To上界 ”可以使用 Dim 或 public或 private 或 static 定义分别使用这 4 个关键字进行定义数组的语句可以出现的位置不同 (同变量的定义) 、数
5、组的 生命周期和作用域不同 (同变量的作用域和生命周期)定义静态数组时小括号内的下标不能使用变量在同一个作用域内不能定义同名的静态数组(即:在同一个作用域内不能多次定义同一个数组),在不同的作用域内可以定义同名的静态数组(同名数组的使用和同名变量的使用相同)数组的定义语句中的 下界和上界 可以是常量或表达式(即:可以是整数、实数、正数、负数),下界不必须是 0 或 1静态数组定义的同时将被初始化静态数组一旦定义后,数组名、数组大小、数组的类型就确定了在程序的窗体模块或标准模块的通用声明处用Option Base n 语句可重新设定数组的下界。此语句的含义是:在 定义数组时,如果省略了下界则默认
6、的下界是n,在定义数组时如果未省略下界则该数组的下界就是其自己定义的下界值(此时忽略 Option Base n 指明的下界 n)在窗体的通用声明处不能用public定义常量、定长字符串、数组2.动态数组定义动态数组的语法格式:public|private|static|Dim数组名() As 数据类型ReDim Preserve数组名 (下标 )As 数据类型 可以使用Redim 定义一个新数组 (即可以不需要用dim 定义数组而直接用redim 定义一个新数组)Redim 只能出现在过程中,不能出现在通用声明处Redim 可以多次重定义同一个数组的大小(可以将数组变大,也可以将数组变小)使
7、用 Redim 重定义数组时 不能改变原有数组的数据类型使用 Redim 重定义数组时 下标可以用变量使用 Redim 重定义数组的同时也会将数组初始化 。未加 preserve 的 Redim 语句将数组元素全部初始化(即原有数组元素的值不被保留),加了 preserve 的 Redim 语句会保留原有数组的值未加 preserve 的 Redim 语句可以任意改变数组的维数和大小,加了preserve 的Redim语句只能改变数组 最后一维的维上界Erase 数组刷新语句, 对于静态数组使用Erase 刷新的结果是将数组元素初始化,对于动态数组使用 Erase 刷新的结果是清除动态数组占用
8、的空间3. 形参数组数组可以作为形参或实参进行参数传递当形参是数组时,形参数组前不能用Byval ,但可以用Byref ,即数组都是传地址的当形参是数组时,形参数组名后的小括号内不能有任何内容当形参是数组时,实参也必须是数组并且类型要相同。若形参数组是定长字符串类型的,实参也必须是定长字符串类型但长度可以不相同当形参是数组时, 在过程中不能用当形参是数组并且是动态数组时,Dim 定义该形参数组在过程中可以用Redim改变数组的大小四、过程1.Function 函数过程Function 函数过程定义的语法格式Function 函数内部不能再定义其他Function或SubFunction 内部可
9、以用多个Exit Function函数可以有返回值,在函数体内可以给函数名赋值使用 static 定义的 function 函数,指明该函数过程中所有的局部变量是静态的使用 private 定义的 function 函数,指明该函数过程是私有的过程,在本窗体的其他过程中可以调用本过程,但是在其他窗体中不能调用本过程使用 public 定义的 function 函数,指明该函数过程是公有的过程,在程序中所有的窗体中均可调用本过程,但是要加上窗体的名字Function 函数可以通过函数名返回一个值,也可以使用传地址的形参返回多个值使用不带call 的调用语句调用funciton 函数且实参未加括号
10、时,不能单独的作为一个语句使用2.Sub 子程序过程Sub 过程过程定义的语法格式Sub 过程内部不能再定义其他Sub 内部可以用多个Exit SubSub 或FunctionSub 子程序过程没有返回值,在过程体内不能给过程名赋值使用 static 定义的 sub 过程,指明该过程过程中所有的局部变量是静态的使用 private 定义的 sub 过程,指明该过程过程是私有的过程,在本窗体的其他过程中可以调用本过程,但是在其他窗体中不能调用本过程使用 public 定义的 sub 过程,指明该过程过程是公有的过程,在程序中所有的窗体中均可调用本过程,但是要加上窗体的名字Sub 子程序过程要想有
11、返回值,只能通过传地址的形参返回调用 Sub 子程序时,需单独的作为一条语句使用3. 参数传递形参:是在过程的定义中出现的变量或数组;实参:是在调用过程的语句中出现的变量、常量、表达式或数组、数组元素形参不能是常量、表达式、数组元素,只能是变量或数组名当形参是变量时,实参可以是变量、常量、表达式或数组元素当形参是数组时,实参必须是数组形参不能是定长字符串变量,但可以是定长字符串数组实参和形参必须在个数、类型上一一对应进行参数传递时要求实参和形参的类型相符(或相容):形参前如果有 Byval :要求实参能够进行正确自动类型转换成形参形参前如果有 Byref 或没有任何关键字:若实参是变量:要求实
12、参的类型必须和形参的类型完全相同若实参是常量或表达式,要求实参能够进行正确自动类型转换成形参,此时实际上是进行值传递值传递:形参前有关键字ByVal ,形参的改变不会影响实参的值地址传递:形参前有关键字ByRef 或无关键字,形参的改变会影响实参的值若实参是常量或表达式,则无论形参表前是否有关键字ByRef ,都只能按值传递4. 同名变量在同一个作用域中,不允许变量名同名。但是在不同作用域中,变量的名字可以相同。系统遇到不同作用域中的同名变量时,在声明了同名变量的模块或过程中,隐藏作用范围大的变量,优先访问作用范围小的变量;在未声明同名变量的模块或过程中,优先访问作用范围大的变量。五、数据类型
13、1. 数值型:整形: Integer、长整形: Long 、单精度: Single、双精度: Double类型符:%存储空间: 2整形取值范围:Single 和 Double&!44-3276832767型可以用科学记数法的形式表示,E 和 D#8是指数符号,只能出现在数的中间2.其他类型:字符型: String (类型符为$)、日期型: Date、布尔型: Boolean3. 数据类型转换强制转换:转换函数: Val()、 Str()、 cstr()、 Asc()、 Chr()、 Cint ()自动转换:数值型间的转换:数值间可以自由转换,注意不要超出范围数值与字符串的转换:纯数字字
14、符串能自动转换为Double 型的数值,数值可以自由转换为字符串数值与布尔型的转换: 0 转换为 false,非 0 转换为 true; true 转换为 -1, false 转换为 0 字符串与布尔型的转换:字符串先转换为数值再由数值转换为布尔型六、VB 内部函数数学函数:Sin()Cos()Tan()Atn()Sqr()Exp()Log()Fix()Int()Sgn()Abs()Sgn()函数的返回值为Integer,其他均为Double 型字符串函数:Instr()Len()Mid()Left()Right()Lcase()Ucase()String()Space()Ltrim()Rtrim()Trim()每个函数的参数个数、参数类型、参数含义Instr 、 Len 返回值为Integer 型,其余均为String型转换函数:Val()、Str()、 cstr()、 Asc()、 Chr ()、 Cint ()Cint()函数的返回值为Integer 型随机函数: Rnd格式输出函数:FormatInputbox ()、 Msgbox ():参数个数、含义七、运算符1. 数学运算符-*/mod+-各种运算符的含义优先级运算规则:“奇进偶不进”的四舍五入乘方 的结果类型是Double除法/ 的结果类型是Double整除 的结果类型是Integer 或 Long求余mo
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 一年级下册数学教案-1.3 七巧板-人教新课标
- 中班体育课教案:帮叔叔送地图
- 人音版三年级上册摇啊摇教案
- 一年级上册数学教案-20以内的进位加法 解决问题(1)-人教版
- 一年级上册数学教案 第四单元【第一课时】 认识物体(一) 人教新课标
- 一年级下册数学教案-第4单元 数数、数的组成∣人教新课标
- 二年级下册数学教案 - 7.1 1000以内数的认识 人教版
- 中班语言教案:冬天和夏天
- 农田灌溉安全隐患排查与风险管控方案
- 科技企业意识形态责任制责任落地总结
- 2024版新房屋装修贷款合同范本
- 15MW源网荷储一体化项目可行性研究报告写作模板-备案审批
- 北师大版二年级数学上册第五单元《2~5的乘法口诀》(大单元教学设计)
- 少先队辅导员笔试题库附有答案
- 2024年入团知识考试题库及答案
- 婴儿培养箱校准规范
- 《补贴与反补贴措施协议》对出口信贷的法律规制研究2
- 铁道运输实训总结报告
- 企业信息管理概述课件
- 室外健身器材投标方案(技术方案)
- 足浴店店长聘用合同范本
评论
0/150
提交评论