VB基础教程:第三章第二节VB的语言基础

2026-03-23
3.2 VB的语言基础

1.数据类型

 VB的标准数据类型

数据类型
关键字
类型符
前缀
存储空间
范围

数值数据类型
字节型
Byte
Byt
1 个字节
0 到 255

整型
Integer
%
Int
2 个字节
-32,768 到 32,767

长整型
Long
&
Lng
4 个字节
-2,147,483,648 到 2,147,483,647

单精度型
Single

Sng
4 个字节
负数:-3.402823E38 到 -1.401298E-45;正数:1.401298E-45 到 3.402823E38

双精度型
Double
#
Dbl
8 个字节
负数: -1.79769313486232E308

- 4.94065645841247E-324;

正数:4.94065645841247E-324

1.79769313486232E308

货币型
Currency
@
Cur
8 个字节
从 -922,337,203,685,477.5808

到 922,337,203,685,477.5807

逻辑型
Boolean
Bln
2 个字节
True 或 False

日期型
Date
Dtm
8 个字节
100 年1月 1日 到 9999 年 12 月 31 日

对象型
Object
Obj
4 个字节
任何 Object 引用

变长字符型
String
$
Str
10 字节加字符串长度
0 到大约 20 亿

定长字符型
String
$
Str
字符串长度
1 到大约 65,400

变体数字型
Variant
Vnt
16 个字节
任何数字值,可达 Double 的范围

变体字符型
Variant
Vnt
22 个字节加字符串长度
与变长 String 有相同的范围

注意:

  1)VB中对没有声明的变量其缺省的数据类型是变体型,可以用来存储各种数据,但所占用的内存比其它类型都多。为提高运行效率(整型效率较高),或达到一定的运算精确度(浮点型精度较高,但运行较慢),应合理的定义数据类型。
  2) 逻辑型数据只有True 和False两个值,转换成整型时,True=-1 ,False=0,将其它类型转换成逻辑型时,非0数转换为True ,0转换为False。
  3) 字符型可以包括所有的西文字符和汉字,字符必须用双引号括" "起来, 如:"abc123"
  4)日期型数据按8字节的浮点数来存储,日期型数表示方式有两种:可以用号码符#括起来,也可以用数字序列表示(小数点左边的数字代表日期,右边代表时间,0为午夜,0。5为中午12点,负数表示是1899年12月31日前的日期和时间)。

 如:#3/22/2002# #2002-3-22 14:30:20#
   Dim T As Date
   T=-2.5
   Print T ' 打印出来的结果是1899-12-28 12:00:00

 5)任何数据类型的数组都需要 20 个字节的内存空间,加上每一数组维数占 4 个字节,再加上数据本身所占用的空间。数据所占用的内存空间可以用数据元数目乘上每个元素的大小加以计算。例如,以 4 个 2 字节之 Integer 数据元所组成的一维数组中的数据,占 8 个字节。这 8 个字节加上额外的 24 个字节,使得这个数组所需总内存空间为 32 个字节。

2. 变量与常量

 (1)变量或常量的命名规则

   1) 必须以字母或汉字开头,由字母、汉字、数字或下划线组成,长度≤255个字符;
   2) 不能使用VB中的关键字,并尽量不与VB中标准函数名同名;如:Dim 、Sin
   3)VB中不区分变量的大小写,一般变量首字母用大写,其余用小写;常量全部用大写字母表示
   4)为了增加程序的可读性,可在变量名前加一个缩写的前缀来表明该变量的数据类型。

 (2)变量声明

   1)用Dim语句进行显式声明

    语句形式: Dim 变量名 [As 类型] 如: Dim intX As integer

  说明:·如果没有As 类型,则默认为变体类型。
        ·可在变量名后加类型符来代替As 类型 如: Dim intX%
        ·一条语句可以同时定义多个变量,但每个变量必须有自己的类型声明,类型声明不能共用;
        ·字符串变量根据其存放的长度是否固定,定义方法不同:

  定长字符串: Dim strA As String*10

      表示最多存放10个字符,如果赋值不足10个,则右补空;若多于10个,则多余部分截去。

  不定长字符串:Dim strA As String ’最多可存放2MB个字符

2) 隐式声明

  VB中允许变量不经过声明就直接使用,这种称为隐式声明,所有隐式声明的变量都是变体型的。
  隐式声明容易造成错误,为了调试程序方便,一般对使用的变量都进行声明,可以在通用声明段使用Option Explicit