首页 理论教育VB使用的基本数据类型及自定义数据类型

VB使用的基本数据类型及自定义数据类型

【摘要】:表1.6所示列出了VB使用的基本数据类型。表示单精度数据。例如:123.45、0.12345E+3、123.45!5)自定义数据类型VB不仅提供了系统定义的以上基本数据类型,也允许用户自己定义数据类型,它由若干个基本数据类型组成。

VB数据类型可以分为两大类:基本数据类型和用户自定义类型。

1.基本数据类型

基本数据类型是VB系统定义的标准数据类型,分为6类:数值型、日期型、逻辑型、字符型、对象型和变体型。表1.6所示列出了VB使用的基本数据类型。

表1.6 基本数据类型

1)数值型数据

数值型数据分为整型和实型两类。整型数据分为整数数据和长整数数据,实型数据分为单精度数据和双精度数据。

(1)整数(Integer):整数范围是-32768~32767,在机器内使用2个字节存储的整数。在VB中数尾常加“%”表示整型数据,也可省略。如-34%,78%。若将一个实数赋值给一个整形变量,则会被自动取整。

(2)长整数(Long):长整数可以是范围从-2147483648到2147483647的整数,在机器内用4个字节存储。在VB中数尾常加“&”表示长整型数据,如-334&,67785649&。整数(Integer)和长整数(Long)均用于保存整数,其可以是正整数、负整数或者零。整型数的运算速度快、精确,且占用存储空间较小,但表示数的范围也较小。

(3)单精度数(Single):单精度数是带小数点的实数,有效数字为7位,在机器内用4个字节存储。实数可以用指数形式表示,指数部分用“E”或“e”表示。在VB中数尾常加“!”表示单精度数据。单精度数有多种表示形式:±n.n(小数形式)、±nE±m(指数形式)、±n.nE±m(指数形式)。例如:123.45、0.12345E+3、123.45!都是同值的单精度数。如果某个数的有效数字位数超过7位,当把它定义为单精度变量时,超出的部分会自动四舍五入。

(4)双精度数(Double):双精度数也是带小数点的实数,有效数字为15或16位,在机器内用8个字节存储。双精度实数若用指数形式表示,则指数部分用“D”或“d”表示。在VB中数尾常加“#”表示双精度数据,如-374.778#,5.678D+2,-2.67e+3#。

(5)字节型数据(Byte):字节型数据用来存储二进制数,是范围在0~255之间的无符号整数,不能表示负数,在机器内用一个字节存储。

在VB中,声明和使用数值型数据时,应注意以下几点:

A.如果数据中包含小数,则应使用Single、Double或Currency型。

B.如果数据为二进制数,则使用Byte数据类型。

C.数值型数据都有一个有效范围值,程序中的数如果超出规定的范围,将会出现“溢出”信息。如小于范围的下限值,系统将按“0”处理;如大于上限值,则系统按上限值处理,并显示出错信息。

2)逻辑型数据(Boolean)

逻辑型数据是用来表示逻辑判断结果的,只有真(True)和假(False)两个值,在机器内用2个字节存储。

若数据信息是“True/False”、“Yes/No”、“On/Off”信息,则可将它定义为Boolean类型。

逻辑数据转换成整型数据时,真转换为-1,假转换为0;其他类型数据转换为逻辑数据时,非0数转换为真,0转换为假。

3)字符型数据

字符型数据是用双引号括起来的一串字符,在计算机中一个字符用1个字节存储。由于计算机中每个字符都以ASCⅡ编码表示,因此在字符串中字母的大小写是有区别的。

4)对象型数据(Object)(www.chuimin.cn)

对象型数据主要以变量形式存在,在机器内用4个字节存储。

5)自定义数据类型

VB不仅提供了系统定义的以上基本数据类型,也允许用户自己定义数据类型,它由若干个基本数据类型组成。

(1)自定义类型必须通过Type语句来声明。

其语法结构如下:

其中数据类型名为自定义数据类型名,元素名为自定义数据类型中的一个成员,类型名为上述基本类型名或自定义数据类型名。

例如:对于一个学生的“学号”、“姓名”、“性别”、“年龄”、“入学成绩”等数据,为了处理数据的方便,常常需要把这些数据定义成一个新的数据类型(如Student类型)。

若自定义类型中的元素为字符型时,必须为定长字符串。

定义了Student数据类型后,就可以像声明VB基本数据类型一样,声明一个Student数据类型变量了,如:

Dim Estu As Student

(2)记录。

保存多个相同或不同类型数值的结构称为记录(Record)。在Visual Basic中定义记录用Type语句,其语法结构如下:

例如定义一个名为CheckRecord的记录:

此后CheckRecord结构可以像普通变量类型一样使用,要声明这个类型的变量,使用如下语句:

Dim check1 As CheckRecord

要对结构的各个字段进行访问,可使用如下语句: