第四章 数据类型
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
如果一个变量未被显式定义末尾也没有类型说明符则为变体类型用deftype语句定义的变量只对它所在的模块起作用在实际应用中应根据需要设置变量类型用类型说明符时的变量在使用时可以省略类型说明符
Visual Basic 程 序设计
第四章 程序设计基础
第四章
程序设计基础
4.1 数据类型
用于描述客观事物的数值、字符及其它能被计算机程序处理的符号,统 称为数据。数据是程序的重要组成部分,它既是程序处理的对象,也是处理 的结果。 数据结构+算法=程序设计 4.1.1 基本数据类型 基本数据类型也称标准数据类型或简单数据类型,Visual Basic 6.0提供 的基本数据类型如表4.1.1所示。 基本数据类型包括:数值型、字符型、逻辑型、日期型、对象类型和变 体类型等六大类。 由表4.1.1可见,不同数据类型的区别主要在于其所占存储空间和取值范 围不同。在程序中,正确选择数据类型可以提高程序的存储效率和运行速度 ,保证程序正常运行。
4.2.1 常量
在VB中的常量可分为:文字常量、符号常量和系统常量三大类。
1.文字常量 文字常量也称直接常量或字面量(Literal)。根据数据类型不同,文 字常量又可分为:数值常量、字符串常量、逻辑常量和日期常量等几大类。
第四章
程序设计基础
(1)数值常量 ①整数:有整型(integer)和长整型(long)两种类型,它有三种表示 形式: 十进制:100、25、0、-135;123&、-123&、45678、-76890等。 八进制:&532、&O345、&O12001; &O123456&等。 十六进制:&H15、&H1FC6; &H5&、&H1FC6&、&H100FC68&。 ②浮点数(实数):有单精度型(single)和双精度型(double)两种类 型。它有小数形式和指数形式(科学计数法)两种。 小数形式:12.34、0.25、-1.52等。(与数学形式相同) 指数形式:123.4!、1.23E+3!; 123.4、123.4#、123.4E+2等。 注:double为实数的默认形式。
说明数据和 算法的重要
第四章
程序设计基础
第四章
程序设计基础
1.数值型 数值型数据的主要用途是进行各种数值运算,它包括:整数类型、浮点 数类型,以及货币型(Currency)。此外,字节型(Byte)数据也可用于数 值计算。 (1)整数类型 ①整型(Integer):整型数据占两字节(16位)存储空间,其取值范 围为:[-32768 ,+32767]。 ②长整型(Long):长整型数据占4字节(32位)存储空间,其取值范 围为:[-2147483648 , +2147483647]。 (2)浮点数类型(也称实型) ①单精度型(Single):单精度型浮点数占4字节(32位)存储空间, 可以精确到7位有效数字。 ②双精度型(Double):双精度型浮点数占6字节(64位)存储空间, 可以精确到15位(或16位)有效数字。
指数形式只能用E表示!
第四章
程序设计基础
(2)字符串常量 字符串型常量是一个用双引号括起来的字符序列。例如:“Visual Basic 6.0”、“程序设计”、“1990”等。
(3)逻辑型常量 逻辑型常量的取值只有逻辑真或逻辑假两种。在VB中,一般以0表示逻 辑假(False),以-1表示逻辑真(True)。 数值型可以和逻辑型相互转换: 当把数值型数据转换为逻辑型时,0值转换为False,其他非0值转换为 True。 当把逻辑型转换为数值型时,False转换为0,True转换为-1。
第四章
程序设计基础
例:3.56是单精度还是双精度呢? 因为实数的默认形式是双精度,所以它是双精度数。
要知变体类型是什么类型,可用VarType()函数进行检测。 例如:Dim x as Variant x=124 Print VarType(x) ‘结果是:2 (整形) x=3.56 Print VarType(x) ‘结果是:5 (双精度) x=“124” Print VarType(x) ‘结果是:8 (字符)
(4)日期型常量 任何在字面上可以被认作日期和时间的字符串,只要用两个“#”号括 起来都可以作为日期型常量。例如,#2006-11-28#,#January,1,2006# #12/31/2000 12:30:00 PM# 。
第四章
程序设计基础
2.符号常量 在VB中,允许定义一个标识符来表示常量,称为符号常量。 在程序中使用符号常量有许多好处。一增加了程序的可阅读性,例如, 可以定义标识符PI来表示圆周率π (3.1415926)。这样,只要一看名字就 知道是圆周率π ;二增强了程序的可维护性,在程序中,当需要对多次用到 的常量进行修改时,可直接修改符号常量的定义部分,而不必对每个常量逐 个修改,从而减少了出错的可能性。
常用数据类型VarType()函数的返回值为: 0— 空;1—无效;2—整形;3—长整形;4—单精度;5—双精度; 6—货币;7—日期;8—字符;9—OLE对象;10—错误;„„
第四章
程序设计基础
4.2 常量与变量
在程序中,数据是以常量和变量两种方式生存的。在程序运行中,常量 (constant)始终保持不变的量。变量(variable)则可以被改变的量。
第四章
程序设计基础
4.日期型(Date) 日期型数据用来表示日期和时间。该型数据占8字节存储空间,可以同 时表示日期和时间。其允许的日期范围:从公元100年1月1日到9999年12月 31日,时间范围:从00:00:00到23:59:59。 5.对象型(Object) 对象型数据可用来表示图形或OLE对象或其他对象,占4字节存储空间。 6.变体类型(Variant) 变体类型是一种特殊的数据类型。它可以用来表示系统定义的所有数据 类型,包括数值、字符串、日期等。在程序中,未经定义的变量默认为变体 类型,对变体类型的处理方式取决于上下文内容。(尽量不用,一是程序调 试容易出错,因为变量可以未经声明就使用,不方便检查错误,并且变量的 类型在程序运行中还要变化;二是其它程序设计语言没有,也给程序移植带 来困难。)
(1)用Dim语句 用于在标准模块、窗体模块或过程中定义变量或数组。 变量定义的一般格式为: Dim 变量名 [ As 数据类型 ] 其中,“Dim”是定义变量的关键字。“变量名”是一个标识符,其命名应满足 标识符命名规则。当省略As子句时,系统默认变量为Variant型(变体类型)。 定义变量举例: Dim count As Integer ’ 定义变量count为整型 Dim num As Single ' 定义变量num为单精度型 Dim a1 ' 定义量a1,默认为变体类型 Dim num% ’通过类型说明符来指定变量num%为整型 Dim inputStr$ ' 定义inputStr为字符串型 Dim m As Integer ,n As Double ' 定义m为整型,n为双精度型 Dim x , y , z As Integer ‘ 定义x和y为变体类型,z为整型 变量的初值:数值型变量为0,字符或变体型变量空串,布尔型变量为False。
第四章
程序设计基础
4.2.2 变量 所谓变量,是指在程序运行过程中其值可以被改变的量。变量的名字 称为变量名,变量的数据类型决定了变量的存储空间及其取值范围。在程序 中可以通过变量名来访问变量。
一.变量和常量的命名规则 ① 以字母或汉字开头,后可跟字母、数字或下划线组成,长度小于等于40个字符; ② 不能使用VB中的关键字; ③ VB中不区分变量名的大小写.、 ④ 为了增加程序的可读性,可在变量名前加一个缩写的前缀来表明该变量的数据类 型。、 例如:strAbc,(字符串变量) iCount,(整型变量) dblx,(双精度变量) sYz (单精度变量) 二、变量的类型和定义 1、用类型说明符来标识 2.在定义变量时指定类型 格式:说明符 变量名 [As 类型] 说明符是说明语句的关键字,它可以是Dim,Private,Public,Static。
第四章
程序设计基础
(3)货币型(Currency) 货币型数据占8字节(64位)存储空间,可精确到小数点后4位(小数点 4位以后的数字将被舍去)。 (4)字节型(Byte) 字节型数据占1字节(8位)存储空间,其取值范围为:0-255,是一个 无符号整数。 2.字符串型(String) 字符串型数据是一个用双引号括起来的字符序列,主要用于存放各种字 符信息或提示信息,由各种ASCII码字符、汉字以及其他可打印字符组成。例 如:“Visual Basic 6.0”、“程序设计”、“1990”等。 在字符串中包含的字符个数称为字符串长度。在Visual Basic中,字符 串分为定长字符串和变长字符串两种,针对字符串变量而言。 3.逻辑型(Boolean),也称布尔型 常用于表示逻辑判断的结果。逻辑型数据占两字节存储空间,其取值只 有逻辑真(True)或逻辑假(False)两种。
第四章程序设计ຫໍສະໝຸດ 础(2)Static 用于在过程中定义静态变量及数组变量。 与Dim不同的,如果Static宝义了一个变量,则每次引用该变量,其值 会继续保留。而当引用Dim定义的变量时,变量值会被重新设置。 (3)Public 用来在标准模块中定义全局变量或数组 3 .用Def Type语句定义 它可用于标准模块、窗体模块的声明部分定义变量。 格式为: Def Type 字母范围 注意:在Def与类型标志之间不要有空格;它通常放在模块的开头。 在使用以上方法定义变量时,要注意以下几点: ① 如果一个变量未被显式定义,末尾也没有类型说明符,则为变体类型 ② 用Def Type语句定义的变量只对它所在的模块起作用 ③ 在实际应用中,应根据需要设置变量类型 ④ 用类型说明符时的变量,在使用时可以省略类型说明符。
最好养成给变量赋初值的习惯,因为很多程序设计语言中变量的初值为 随机值,如C\C++语言等。
第四章
程序设计基础
变量赋值 变量赋值的一般格式为: [Let] 变量名 = 表达式 功能:首先计算表达式的值,然后再将该值赋值给“=”(赋值号)左 边的变量。 例4.2.2 一个变量赋值的简单例子。 Private Sub Command1_Click() Dim a As Integer,b As Integer, c As Integer ' 定义三个整型变量 a = 2 ' 将2赋值给变量a b = a ' 将变量a的值赋值给变量b c = a + b ' 将表达式“a+b”的值赋值给变量c c = c + 3 ' 将c+3的和赋值给变量c Print “a=”; a, “b=”; b, “c=”; c ’输出结果 End Sub 程序运行的结果为: a=2 b=2 c=7
三、系统常量:是由系统预定义的符号常量。
VB系统提供了应用程序和控件的系统定义常数。在程序中使用系统常
量,可以提高程序的可阅读性。 它们存放于系统的对象库中,在“对象 浏览器”中的 Visual Basic(VB) 和 Visual Basic for applications
(VBA)对象库中列举了 Visual Basic 的常数 。
定义符号常量的一般格式为: Const 常量名 [As 数据类型] = 表达式 其中,“Const”是定义符号常量的关键字。“常量名”是一个标识符, 命名规则与标识符相同。 例如, Const Const Const Const PI As Single =3.1415926 StateLine = MaxLine + 1 intCount% = 1 ‘常量名后加上类型说明符来指定符号常量的类型。 inputPro$ = “请输入一个整数:”
例如,要将文本框Text1的前景颜色设置为红色,可以使用下面的语句: Text1.ForeColor=vbRed 这里的vbRed就是系统常量。这比直接使用16进制数来设置要直观得多。 又如,窗口状态属性WindowsState可取0,1,2三个值,对应三种不同状态
(参见第二章P22页所示)。
在程序中使用语句 Myform.WindowsState=vbMaxmized,将窗口极大 化,显然要比使用语句Myform.WindowsState=2 易于阅读和理解。
Visual Basic 程 序设计
第四章 程序设计基础
第四章
程序设计基础
4.1 数据类型
用于描述客观事物的数值、字符及其它能被计算机程序处理的符号,统 称为数据。数据是程序的重要组成部分,它既是程序处理的对象,也是处理 的结果。 数据结构+算法=程序设计 4.1.1 基本数据类型 基本数据类型也称标准数据类型或简单数据类型,Visual Basic 6.0提供 的基本数据类型如表4.1.1所示。 基本数据类型包括:数值型、字符型、逻辑型、日期型、对象类型和变 体类型等六大类。 由表4.1.1可见,不同数据类型的区别主要在于其所占存储空间和取值范 围不同。在程序中,正确选择数据类型可以提高程序的存储效率和运行速度 ,保证程序正常运行。
4.2.1 常量
在VB中的常量可分为:文字常量、符号常量和系统常量三大类。
1.文字常量 文字常量也称直接常量或字面量(Literal)。根据数据类型不同,文 字常量又可分为:数值常量、字符串常量、逻辑常量和日期常量等几大类。
第四章
程序设计基础
(1)数值常量 ①整数:有整型(integer)和长整型(long)两种类型,它有三种表示 形式: 十进制:100、25、0、-135;123&、-123&、45678、-76890等。 八进制:&532、&O345、&O12001; &O123456&等。 十六进制:&H15、&H1FC6; &H5&、&H1FC6&、&H100FC68&。 ②浮点数(实数):有单精度型(single)和双精度型(double)两种类 型。它有小数形式和指数形式(科学计数法)两种。 小数形式:12.34、0.25、-1.52等。(与数学形式相同) 指数形式:123.4!、1.23E+3!; 123.4、123.4#、123.4E+2等。 注:double为实数的默认形式。
说明数据和 算法的重要
第四章
程序设计基础
第四章
程序设计基础
1.数值型 数值型数据的主要用途是进行各种数值运算,它包括:整数类型、浮点 数类型,以及货币型(Currency)。此外,字节型(Byte)数据也可用于数 值计算。 (1)整数类型 ①整型(Integer):整型数据占两字节(16位)存储空间,其取值范 围为:[-32768 ,+32767]。 ②长整型(Long):长整型数据占4字节(32位)存储空间,其取值范 围为:[-2147483648 , +2147483647]。 (2)浮点数类型(也称实型) ①单精度型(Single):单精度型浮点数占4字节(32位)存储空间, 可以精确到7位有效数字。 ②双精度型(Double):双精度型浮点数占6字节(64位)存储空间, 可以精确到15位(或16位)有效数字。
指数形式只能用E表示!
第四章
程序设计基础
(2)字符串常量 字符串型常量是一个用双引号括起来的字符序列。例如:“Visual Basic 6.0”、“程序设计”、“1990”等。
(3)逻辑型常量 逻辑型常量的取值只有逻辑真或逻辑假两种。在VB中,一般以0表示逻 辑假(False),以-1表示逻辑真(True)。 数值型可以和逻辑型相互转换: 当把数值型数据转换为逻辑型时,0值转换为False,其他非0值转换为 True。 当把逻辑型转换为数值型时,False转换为0,True转换为-1。
第四章
程序设计基础
例:3.56是单精度还是双精度呢? 因为实数的默认形式是双精度,所以它是双精度数。
要知变体类型是什么类型,可用VarType()函数进行检测。 例如:Dim x as Variant x=124 Print VarType(x) ‘结果是:2 (整形) x=3.56 Print VarType(x) ‘结果是:5 (双精度) x=“124” Print VarType(x) ‘结果是:8 (字符)
(4)日期型常量 任何在字面上可以被认作日期和时间的字符串,只要用两个“#”号括 起来都可以作为日期型常量。例如,#2006-11-28#,#January,1,2006# #12/31/2000 12:30:00 PM# 。
第四章
程序设计基础
2.符号常量 在VB中,允许定义一个标识符来表示常量,称为符号常量。 在程序中使用符号常量有许多好处。一增加了程序的可阅读性,例如, 可以定义标识符PI来表示圆周率π (3.1415926)。这样,只要一看名字就 知道是圆周率π ;二增强了程序的可维护性,在程序中,当需要对多次用到 的常量进行修改时,可直接修改符号常量的定义部分,而不必对每个常量逐 个修改,从而减少了出错的可能性。
常用数据类型VarType()函数的返回值为: 0— 空;1—无效;2—整形;3—长整形;4—单精度;5—双精度; 6—货币;7—日期;8—字符;9—OLE对象;10—错误;„„
第四章
程序设计基础
4.2 常量与变量
在程序中,数据是以常量和变量两种方式生存的。在程序运行中,常量 (constant)始终保持不变的量。变量(variable)则可以被改变的量。
第四章
程序设计基础
4.日期型(Date) 日期型数据用来表示日期和时间。该型数据占8字节存储空间,可以同 时表示日期和时间。其允许的日期范围:从公元100年1月1日到9999年12月 31日,时间范围:从00:00:00到23:59:59。 5.对象型(Object) 对象型数据可用来表示图形或OLE对象或其他对象,占4字节存储空间。 6.变体类型(Variant) 变体类型是一种特殊的数据类型。它可以用来表示系统定义的所有数据 类型,包括数值、字符串、日期等。在程序中,未经定义的变量默认为变体 类型,对变体类型的处理方式取决于上下文内容。(尽量不用,一是程序调 试容易出错,因为变量可以未经声明就使用,不方便检查错误,并且变量的 类型在程序运行中还要变化;二是其它程序设计语言没有,也给程序移植带 来困难。)
(1)用Dim语句 用于在标准模块、窗体模块或过程中定义变量或数组。 变量定义的一般格式为: Dim 变量名 [ As 数据类型 ] 其中,“Dim”是定义变量的关键字。“变量名”是一个标识符,其命名应满足 标识符命名规则。当省略As子句时,系统默认变量为Variant型(变体类型)。 定义变量举例: Dim count As Integer ’ 定义变量count为整型 Dim num As Single ' 定义变量num为单精度型 Dim a1 ' 定义量a1,默认为变体类型 Dim num% ’通过类型说明符来指定变量num%为整型 Dim inputStr$ ' 定义inputStr为字符串型 Dim m As Integer ,n As Double ' 定义m为整型,n为双精度型 Dim x , y , z As Integer ‘ 定义x和y为变体类型,z为整型 变量的初值:数值型变量为0,字符或变体型变量空串,布尔型变量为False。
第四章
程序设计基础
4.2.2 变量 所谓变量,是指在程序运行过程中其值可以被改变的量。变量的名字 称为变量名,变量的数据类型决定了变量的存储空间及其取值范围。在程序 中可以通过变量名来访问变量。
一.变量和常量的命名规则 ① 以字母或汉字开头,后可跟字母、数字或下划线组成,长度小于等于40个字符; ② 不能使用VB中的关键字; ③ VB中不区分变量名的大小写.、 ④ 为了增加程序的可读性,可在变量名前加一个缩写的前缀来表明该变量的数据类 型。、 例如:strAbc,(字符串变量) iCount,(整型变量) dblx,(双精度变量) sYz (单精度变量) 二、变量的类型和定义 1、用类型说明符来标识 2.在定义变量时指定类型 格式:说明符 变量名 [As 类型] 说明符是说明语句的关键字,它可以是Dim,Private,Public,Static。
第四章
程序设计基础
(3)货币型(Currency) 货币型数据占8字节(64位)存储空间,可精确到小数点后4位(小数点 4位以后的数字将被舍去)。 (4)字节型(Byte) 字节型数据占1字节(8位)存储空间,其取值范围为:0-255,是一个 无符号整数。 2.字符串型(String) 字符串型数据是一个用双引号括起来的字符序列,主要用于存放各种字 符信息或提示信息,由各种ASCII码字符、汉字以及其他可打印字符组成。例 如:“Visual Basic 6.0”、“程序设计”、“1990”等。 在字符串中包含的字符个数称为字符串长度。在Visual Basic中,字符 串分为定长字符串和变长字符串两种,针对字符串变量而言。 3.逻辑型(Boolean),也称布尔型 常用于表示逻辑判断的结果。逻辑型数据占两字节存储空间,其取值只 有逻辑真(True)或逻辑假(False)两种。
第四章程序设计ຫໍສະໝຸດ 础(2)Static 用于在过程中定义静态变量及数组变量。 与Dim不同的,如果Static宝义了一个变量,则每次引用该变量,其值 会继续保留。而当引用Dim定义的变量时,变量值会被重新设置。 (3)Public 用来在标准模块中定义全局变量或数组 3 .用Def Type语句定义 它可用于标准模块、窗体模块的声明部分定义变量。 格式为: Def Type 字母范围 注意:在Def与类型标志之间不要有空格;它通常放在模块的开头。 在使用以上方法定义变量时,要注意以下几点: ① 如果一个变量未被显式定义,末尾也没有类型说明符,则为变体类型 ② 用Def Type语句定义的变量只对它所在的模块起作用 ③ 在实际应用中,应根据需要设置变量类型 ④ 用类型说明符时的变量,在使用时可以省略类型说明符。
最好养成给变量赋初值的习惯,因为很多程序设计语言中变量的初值为 随机值,如C\C++语言等。
第四章
程序设计基础
变量赋值 变量赋值的一般格式为: [Let] 变量名 = 表达式 功能:首先计算表达式的值,然后再将该值赋值给“=”(赋值号)左 边的变量。 例4.2.2 一个变量赋值的简单例子。 Private Sub Command1_Click() Dim a As Integer,b As Integer, c As Integer ' 定义三个整型变量 a = 2 ' 将2赋值给变量a b = a ' 将变量a的值赋值给变量b c = a + b ' 将表达式“a+b”的值赋值给变量c c = c + 3 ' 将c+3的和赋值给变量c Print “a=”; a, “b=”; b, “c=”; c ’输出结果 End Sub 程序运行的结果为: a=2 b=2 c=7
三、系统常量:是由系统预定义的符号常量。
VB系统提供了应用程序和控件的系统定义常数。在程序中使用系统常
量,可以提高程序的可阅读性。 它们存放于系统的对象库中,在“对象 浏览器”中的 Visual Basic(VB) 和 Visual Basic for applications
(VBA)对象库中列举了 Visual Basic 的常数 。
定义符号常量的一般格式为: Const 常量名 [As 数据类型] = 表达式 其中,“Const”是定义符号常量的关键字。“常量名”是一个标识符, 命名规则与标识符相同。 例如, Const Const Const Const PI As Single =3.1415926 StateLine = MaxLine + 1 intCount% = 1 ‘常量名后加上类型说明符来指定符号常量的类型。 inputPro$ = “请输入一个整数:”
例如,要将文本框Text1的前景颜色设置为红色,可以使用下面的语句: Text1.ForeColor=vbRed 这里的vbRed就是系统常量。这比直接使用16进制数来设置要直观得多。 又如,窗口状态属性WindowsState可取0,1,2三个值,对应三种不同状态
(参见第二章P22页所示)。
在程序中使用语句 Myform.WindowsState=vbMaxmized,将窗口极大 化,显然要比使用语句Myform.WindowsState=2 易于阅读和理解。