资源预览内容
第1页 / 共51页
第2页 / 共51页
第3页 / 共51页
第4页 / 共51页
第5页 / 共51页
第6页 / 共51页
第7页 / 共51页
第8页 / 共51页
第9页 / 共51页
第10页 / 共51页
亲,该文档总共51页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
第2章 Visual Basic 语言基础,第2章 Visual Basic 语言基础,VB使用BASIC语言为语言基础,并得到了较大的扩展,既可以通过语言流程结构控制程序,也可以轻松地处理VB的对象和控件。,2.1 标准数据类型 为了更好地处理各种各样的数据,VB定义了多种数据类型,表2-1列出了VB中定义的全部标准数据类型。 表2-1 VB 6.0的标准数据类型,2.1.1 数值(Numeric)型数据 VB有6种数值型的数据:整型、长整型、单精度浮点型、双精度浮点型、货币型和字节数据类型。 1. 常规整型数(Integer) 常规整型数简称为整型数,表示不带小数点和指数符号的数,其内部存储空间和范围如表2-1所示。 2. 长整型数(Long) 长整型数的数字组成与整数相同,正号可以省略,并且在数值中不能出现逗号(分节符)。长整型数内部存储空间和范围如表2-1所示。,3. 单精度数(Single) 单精度数的内部存储空间和范围如表2-1所示。可表示最多7位有效数字的数,小数点可以位于这些数字的任何位置,正号可以省略。单精度数可以用定点形式和浮点形式来表示。 单精度数的定点形式是在该范围内含有小数的数。 单精度数的浮点形式是用科学计数法,即以10的整数次幂表示的数,以“E”来表示底数10。 4. 双精度数(Double) 双精度数的内部存储空间和范围如表2-1所示。可表示最多15位有效数字的数,小数点可以位于这些数字的任何位置,正号可以省略。双精度数也有定点和浮点两种形式。,5. 货币型(Currency) 货币型数的内部存储空间和范围如表2-1所示。Currency数据类型支持小数点右面4位和小数点左面15位,它是一个精确的定点数据类型,适用于货币计算。浮点(Single和Double)数比Currency的有效范围大得多,但有可能产生小的进位误差。 6. 字节型(Byte) Byte数表示无符号的整数,范围为0255。除一元减法外,所有可对整数进行操作的运算符均可操作Byte数据类型。因为Byte是从0255的无符号类型,所以不能表示负数。因此,在进行一元减法运算时,VB首先将Byte转换为符号整数。,2.1.2 字符(String)型数据 字符型数据是指一切可打印的字符和字符串,它是用双引号括起来的一串字符。一个西文字符占一个字节,一个汉字或全角字符占两个字节。字符串允许的最大长度见表2-1。在VB中有两种类型字符串:变长字符串和定长字符串。 1. 变长字符串 可变长字符串是指字符串的长度是不固定的,随着对字符串变量赋予新的字符串,它的长度可增可减。按照缺省规定,一个字符串如没有定义成固定长的,都属于可变长字符串。,2.1.2 字符(String)型数据 2. 定长字符串 固定长字符串是指它在程序执行过程中,始终保持其长度不变的字符串。 如果赋予字符串的字符少于20个,则用空格将不足部分填满。如果赋予字符串的长度超过20个,则截去超出部分的字符。,2.1.3 布尔(Boolean)型数据 布尔型数据只有两个值:真(True)和假(False),经常被用来表示逻辑判断的结果。任何只有两种状态的数据,如True或False、Yes或No、On或Off等,都可以表示为布尔型。 当把数值型数据转换为Boolean型时,0会转换为False,其他非0值转换为True。当把Boolean值转换为数值型时,False转换为0,True转换成1。,2.1.4 日期(Date)型数据 Date型数据用来表示日期和时间,可以表示多种格式的日期和时间。Date型数据用两个“#”符号把表示日期和时间的值括起来,就像字符串数据用双引号括起来一样。例如:#11/18/1999#,#1999-11-18#,#11/18/1999 10:28:56 pm#。如果输入的日期或时间是非法的或不存在的,系统将提示出错。,2.1.5 对象(Object)型数据 Object型数据可用来表示应用程序中或某些其他应用程序中的对象。可以用Set语句指定一个被声明为Object的变量去引用应用程序所识别的任何实际对象。例如: Dim objDb As Object Set objDb = OpenDatabase(“c:Vb6Biblio.mdb“),2.1.6 可变(Variant)类型数据 Variant类型的数据能够表示所有系统定义类型的数据,当把它们赋予Variant型时,不必在这些数据的类型间进行转换,VB会自动完成任何必要的转换。 要尽量少用Variant数据类型,以避免发生错误。如果对Variant变量进行数学运算,则Variant必包含某个数。如果连接两个字符串,则应该用“&”操作符,而不要用“+”操作符。,2.2 变量 变量就是命名的内存单元位置,一旦定义了某个变量,该变量表示的都将是同一个内存位置,程序员使用变量名,就可在程序的其他部分引用该内存位置,直到释放该变量。 变量有两个特性:名字和数据类型。变量的名字用于在程序中标识变量和使用变量的值,数据类型则确定变量中能保存哪种数据。,2.2 变量 2.2.1 变量的命名规则 变量名可以是任何有效的标示符,但不能是关键字(VB的关键字是指VB中系统已经定义的词,如命令语句、内部函数、运算符名等),并且必须以字母开头,如:sum,a2,不能是2a。变量名的最大长度是255个字符,只能含字母、数字和下划线。 VB是不区分大小写的,所以认为a1和A1是相同的。关键字也是不区分大小写的,VB自动地设置关键字的第一个字母为大写,因此输入的dim将转变为Dim。,Microsoft推荐的变量命名规则为:变量名以小写字母开头,第一个单词后面的每个单词都以大写字母开头,其它字母小写,以保证对变量名能够进行正确的断句。例如:userTable、name、dateHired等。 在为变量命名时还应注意: 1) 尽可能简单明了,尽量不要使变量名太长,因为太长了不便于阅读和书写。 2) 变量名不能与过程名和符号常量名相同。 3) 变量名在同一个范围内必须是惟一的。,2.2.2 变量的声明 与其他语言不同,VB不要求在使用变量前特别声明。如果没有声明变量,VB使用称为“可变类型(Variant)”的缺省数据类型。然而,使用可变类型存储通用信息有两个缺点:一是它会浪费内存空间,二是在与某些数据处理功能同时使用时可变类型可能无效。所以,在使用变量前最好先声明变量,把将要用到的数据类型告诉程序。 1. 声明变量 所谓声明变量,就是用一个语句来定义变量的类型,又称为显式声明。声明变量的语句并不把值分配给变量,而是告知变量将会包含的数据。声明语句的语法为 Dim | Private | Static | Public变量名As 类型,变量名2As 类型2 ,使用声明语句建立一个变量后,VB自动将数值类型的变量赋初值0,将字符或Variant类型的变量赋空串,将布尔型的变量赋False。 使用变量时,VB会自动转换变量值的类型,使变量的值与声明语句中的名字相匹配。例如,声明变量为: Dim count As Integer 当为该变量赋值时: count = 1.5 数1.5为单精度浮点型Single 变量count会自动将1.5转换为整型数(Integer)2(四舍五入)。,2. 强制显式声明变量语句Option Explicit 声明变量可以有效地降低错误率。为了避免写错变量名引起的麻烦,可以规定在使用变量前,必须先用声明语句进行声明,否则VB将发出警告“Variable not defined”(变量未定义)。要强制显式声明变量,可以在类模块、窗体模块或标准模块的声明段中加入语句: Option Explicit 或从“工具”菜单中执行“选项”命令,在打开的“选项”对话框中单击“编辑器”选项卡,再复选“要求变量声明”选项。,2. 强制显式声明变量语句Option Explicit Option Explicit语句的作用范围仅限于语句所在模块,所以,对每个需要强制显式变量声明的窗体模块、标准模块及类模块,必须将Option Explicit语句放在这些模块的声明段中。如果选择“要求变量声明”,VB会在后续的窗体模块、标准模块及类模块中自动插入Option Explicit,这一语句总是显示在代码编辑窗口的顶部。,2.3 常量 常量是指在程序运行过程中始终保持不变的常数、字符串等。在VB中,有两种形式的常量:直接常量和符号常量。 直接常量就是在程序代码中,以直接明显的形式给出的数据。符号常量有点像变量,但不能修改,也不能对符号常量赋以新值。,2.3.1 直接常量 根据使用的数据类型,常量分为:字符串常量、数值常量、布尔常量、日期常量。 1. 字符串常量 字符串常量就是用双引号括起来的一串字符。这些字符可以是除双引号“”和回车、换行符以外的所有字符,例如:“A“,“123“。如果一个字符串仅有双引号(即双引号中无任何字符,也不含空格),则称该字符串为空串,即“。 2. 数值常量 数值常量就是常数,共有5种数值类型:整数、长整数、定点数、浮点数和字节数。,2.3.1 直接常量 根据使用的数据类型,常量分为:字符串常量、数值常量、布尔常量、日期常量。 3. 布尔常量 布尔常量只有True(真)和False(假)两个值。 4. 日期常量 用两个“#”符号把表示日期和时间的值括起来表示日期常量。例如:#06/20/2000#。,2.3.2 符号常量 符号常量又分为两种:内部(系统定义)常量和符号(用户定义)常量。,图2-3 “对象浏览器”窗口 1. 系统内部定义的常量 内部或系统定义的常量是VB和控件提供的。这些常量可与应用程序的对象、方法和属性一起使用,在代码中可以直接使用它们。可以在“对象浏览器”中的查看内部常量。,2. 用户定义的符号常量 (1) 符号常量的声明 尽管VB内部定义了大量的常量,但是有时程序员还是需要创建自己的符号常量。用户定义常量使用Const语句来给常量分配名字、值和类型。声明常量的语法为: Public | Private Const 常量名 As 数据类型 =表达式 等号“=”右边的表达式往往是数字或字符串,但也可以是其结果为数或字符串的表达式(尽管表达式不能包含函数调用)。甚至可用先前定义过的常量定义新常量。 Const pi2 = pi * 2 常量一经定义,就可将其放置在代码中,使代码更可读。例如: Static solarSystem (1 To maxPlanets) If people worldPop Then Exit Sub,(2) 符号常量的使用规则 与变量声明一样,Const语句也有范围,也使用相同的规则: 1) 为创建仅存在于过程中的常量,应在该过程内部声明常量。如Const a=20。 2) 为使常量对模块中所有过程都有效,但对模块之外任何代码都无效,应在模块的声明段中声明常量。如Private Const a=20。 3) 为创建在整个应用程序中有效的常量,应在标准模块声明段中进行声明,并在Const前放置Public关键字。如Public Const a=20。在窗体模块或类模块中不能声明Public常量。,由于常量可以用其他常量定义,因此在两个以上常量之间不要出现循环或循环引用。当程序中有两个以上的公用常量,而且每个公用常量都用另一个去定义时就会出现循环。例如: 在Module1中: Public Const a = b * 2 在整个应用程序中有效 在Module2: Public Const b = a / 2 在整个应用程序中有效 如果出现循环,在试图运行此应用程序时,VB就会产生错误信息,不解决循环引用就不能运行程序。为避免出现循环,可将公共常量限制在单一模块内,或最多只存在于少数几个模块内。,2.4 表达式 表达式可用来执行运算、操作字符或测试数
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号