您现在的位置:首页 >> 网络教学 >> VB语言基础 >> 内容

数据类型

时间:2009-6-18 20:49:55 点击:1756

 VB语言基础

Visual Basic是在原有Basic语言基础上的进一步发展,它包含了数百条语句、函数及关键词,具有所见即所得的可视化编程环境。

从掌握开发VB 应用程序的基本技能出发,本章主要介绍VB的基础知识、基本语法规则,包括字符集、数据类型、常量、变量、命名规则、运算符、表达式以及常用内部函数。

 数据类型

一、基本数据类型

大多数的计算机语言都规定了各自的数据类型,VB也不例外。其实,在一个最简单的程序中数据类型是可以不作规定的,但为了程序的严谨和便于查看,正确的定义数据类型是必要的。定义数据的另一个原因是,不同的数据占用不同的内存数量,定义合适的数据类型将有节省内存空间的作用。

VB的数据类型比较丰富,可以分为两大类:基本数据类型和用户自定义类型。表3-1列出了VB使用的基本数据类型。

3-1  VB 基本数据类型

数据类型

关键字

类型符

前缀

字节

范围

整型

Integer

%

int

2

-32768~32767

长整型

Long

&

lng

4

-2147483648~2147483647

单精度型

Single

!

sng

4

负数:-3.402823E38~1.401298E-45

正数:1.401298E-45~3.402823E38

双精度型

Double

#

dbl

8

负数:-1.79769313486232D308~

-4.94065645841247D-324

正数:4.94065645841247D-324~

1.79769313486232D308

货币型

Currency

@

cur

8

-922337203685477.5808~

922337203685477.5807

字节型

Byte

byt

1

0~255

日期型

Date(time)

dtm

8

01,01,100~12,31,9999

(00:00:00~23:59:59)

逻辑型

Boolean

bln

2

TrueFalse

字符型

String

 $

str

0~65535个字符

对象型

Object

obj

4

任何对象引用

变体型

Variant

vnt

上述有效范围之一

基本数据类型是系统定义的标准数据类型,可以直接使用。分为6类:数值型,日期型,逻辑型,字符型和变体型。

()数值型数据

数值型数据分为整型和实型两类。整型数据分为整数和长整数,实型数据分为单精度和双精度数据。有时把货币型和字节型数据也归为数值型数据。

1.整数Interger。整数是不带小数点,范围在-32768~32767之间,在机器内使用2个字节存储的整数。在VB中数尾常加“%”表示整型数据,也可省略。如-3478%

2.长整数Long。长整数可以超过整数-32768~32767范围,可以是-2147483648~2147483647之间的不带小数点的整数,在机器内用4个字节存储。在VB中数尾常加:“&”表示长整型数据。如-334&67785649&整数(Interger)和长整数(Long)均用于保存整数,其可以是正整数、负整数或者0。例如:369-369+369均表示整数,而369.0就不是整数;-999397712345678均表示长整数,而123,456则是非法数。整型数的运算速度快、精确,且占用存储空间较小,但表示数的范围也较小。

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

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

5.货币型数据(Currency)。货币型数据是为是一种专门为处理货币而设计的数据类型,是一种特殊的小数。,它的精度要求较高,8个字节存储,保留小数点右边4位和小数点左边15位,如果数据定义为货币型,且其小数点后超过4位,那么超过的部分自动四舍五入。VB中数尾常加“@”表示货币型数据。如3.4@565@

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

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

(1)  如果数据中包含小数,则应使用singledoublecurrency型。

(2)  如果数据为二进制数,则使用byte数据类型。

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

(4)  所有数值变量可互相赋值。

()日期型数据(Date

日期型数据是为表示日期设置的,在机器内用8个字节存储,表示从公元10011日到公元99991231日的日期,时间范围则从000秒到235959秒即00000235959。表示方法是以“#”括起来的字面上被认为是日期和时间的字符,例如:#04/10/2008##2004-08-10##September 12004##2004-9-10 133015#

()逻辑型数据(Boolean

逻辑型数据是用来表示逻辑判断结果的,只有真(True)和假(False)两个值,在机器内用2个字节存储。若数据信息是“true/false”“yes/no”“on/off”信息,则可将它定义为Boolean 类型。逻辑数据转换成整型数据时,真转换为-1,假转换为0;其他类型数据转换为逻辑数据时,非0数转换为真,0转换为假。

()字符型数据

字符型数据是用双引号括起来的一串字符,用来定义一个计算机字符组成的序列。在机器中一个字符用1个字节存储。每个字符都以ASCII编码表示,因此在字符串中字母的大小写是有区别的。在默认字符状态下,它是变长字符串,也可以声明为定长字符串,变长字符串的最大长度为231-1个字符;定长字符串的最大长度为65535个字符 。如果字符个数少于固定长度,自动用空格将不足部分补齐,否则会自动截去多余部分的字符。例如:“Visual Basic”赣南师院“123.456”“everyone”“”(空字符串)。

注意:

(1)   “”表示空字符串,而“  ”表示的是有一个空格的字符串;

(2)   如字符串中本身含有双引号,则用两个连续的双引号表示。 例:表示字符串计算机”ABC,正确的表示形式为:“计算机””ABC”

()对象型数据(Object)

对象型数据主要以变量形式存在,可以引用应用程序中或某些其他应用程序中的对象。在机器内用4个字节存储。使用Set语句指定一个被声明为Object的变量去引用应用程序所识别的任何实际对象。例如:

Dim objDb As Object

Set objDb=OpenDatabase("c:\Vb6\student.mdb")

()变体型数据(Variant

变体型是一种通用的,可变的数据类型,它可以表示以上任何一种数据类型。它是声明变量时的默认类型。Variant数据类型能够存储所有系统定义类型的数据。如果把它们赋予Variant变量,则不必在这些数据的类型间进行转换,VB会自动完成任何必要的转换。假设定义a为变体型变量,在变量a中可以存放任何类型的数据,例如:

    a=-BASIC-      -‘存放一个字符串

    a=10    -           存放一个整数

    a=205            -‘存放一个实数

    a=#08152003#    存放一个日期型数据   

根据赋给a的值的类型不同,变量a的类型不断变化,这就是称之为变体类型的由来。当一个变量未定义类型时,VB自动将变量定义为Variant类型。

不同类型的数据在Variant变量中是按其实际类型存放的(例如将一个整数赋给a,在内存区中按整型数方式存放),用户不必作任何转换的工作,VB自动完成。可以通过VarType函数来检测变体型变量的实际数据类型,如表3-2所示。

3-2 Variant变量的内部表示

符号常量

函数值

数值类型

V_Empty

0

Empty(未初始化)

V_Null

1

Null(无有效数据)

V_Integer

2

整数

V_Long

3

长整数

V_Single

4

单精度浮点数

V_Double

5

双精度浮点数

V_Currency

6

货币值

V_Date

7

日期

V_String

8

字符串

V_Object

9

对象

V_Error

10

错误值

V_Boolean

11

布尔值

V_Variant

12

Variant(只与变体中的数组一起使用)

V_Object

13

数据访问对象

V_Byte

17

位值

V_Array

8192

数组

二、自定义数据类型

VB不仅提供了系统定义的以上基本数据类型,也允许用户自己定义数据类型,它由若干个基本数据类型组成。自定义类型必须通过Type语句来声明。

格式:

Type数据类型名

元素名 As 类型名

元素名 As 类型名

元素名 As 类型名

End Type

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

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

Type Student

      Xh As Sting

           Xm As String*10             长度为10

           Xb As String

      Nl As Integer

      Score As Single

End Type

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

可以看出,自定义数据类型类似于C语言中的结构体形,因此通常把这种类型又称为记录型。

这样,就可以定义一个student类型的变量了。

Dim Estu As student                用变量,元素的形式引用各成员

作者:Admin  
  • 上一篇:没有了
  • 下一篇:常量与变量
  • 相关文章
    • 没有相关文章
    本类热门
    本类推荐
    本类固顶
    • 没有
  • VB程序设计学习网站(赣南师范学院) © 2008 版权所有 All Rights Reserved.
  • 地址:江西省赣州市经济技术开发区 赣南师范学院数学与计算机科学学院 邮政编码:341000
    Email:ZQ188@163.com 技术支持QQ:87319633 移ICP备10086号
  • GnsySjxy! V2.4