VB是在BASICA、GW_BASIC、QUICK BASIC等语言基础上发展起来的,它保留了BASIC版本中数据类型和语法,对其中的某此语句和函数的功能作了修改或扩展,并根据语言的可视化要求增加了一些新的操作。
数据类型
一、基本数据类型
(1)字符串
字符串是一个字符序列,由ASCII字符组成。在VB中其长度为0到65535个字符。其中长度为0的字符称为空字符串。字符串通常放在引号中,如:
"HELLO" ""
(2)数值
VB的数值型数据分为整型数和浮点数两类。其中整型数又分为整数和长整数,浮点数分为单精度浮点数和双精度浮点数。
(3)货币
货币数据类型是为表示钱款而设置的,其取值范围为:
- 922337203685477.5808 到 922337203685477.5807
(4)变体
变体数据类型是一种可娈的数据类型,可以表示任何值,包括数值、字符串、日期/时间等。
下表列出了基本数据类型的名称、取值范围和存储要求:
类型名称 |
表示数据 | 取值范围 | 存储 |
| Integer | 整数 | -32768到32767 | 2字节 |
| Long | 长整数 | -2147483648到2147483647 | 4字节 |
| String | 字符串 | 0到65535个字符 | 1字节/字符 |
| Single | 单精度浮点数 | -3.402823E38到-1。401298E-45 1。401298E-45到3。402823E38 |
4字节 |
| Double | 双精度浮点数 | -1.79769313486232D308到-4.94065645841247D-324 4.94065645841247D-324到1.79769313486232D308 |
8字节 |
| Currency | 货币 | -922337203685477.5808到922337203685477.5807 | 8字节 |
| Variant | 变体 | 上述之一 |
二、用户定义数据类型
用户可利用TYPE语句定义自己的数据类型,格式如下:
TYPE 数据类型名
数据类型元素名 AS 类型名
数据类型元素名 AS 类型名
......
END TYPE
常量和变量
在程序中,不同类型的数据既可以常量的形式出现,又可以变量的形式出现。常量在程序执行期间其值不发生变化,而变量的值是可变的,它代表内存中指定的存储单元。
变量的声明:
Dim var AS Type
Public var AS Type
Private var AS Type
其中:
Public 定义公有变量
Dim,Private 定义私有变量
Option Explicit 关键字:
Visual Basic中用户可以不声明而直接使用变量,但容易产生错误。可以使用Option Explicit强制声明变量,必须先声明后引用。
Option Explicit关键字放在窗体或模块的通用声明(Genneral Declaractions)处。
也可以通过设置将Option Explicit自动加入到每个模块中,方法是:
1、从‘工具’菜单中选‘选项’
2、选择‘编辑’选项卡
3、选择“要求变量声明”选项
4、选择“确定”
变量的作用域
VB的变量有三个作用域:
局部(LOCAL)在过程级定义的变量,仅在声明它的过程中可见。
模块/窗体(MOUDULE/FORM)在模块或窗体级声明的变量,在声明它的模块或窗体中的所有过程中可见。
公有(PUBLIC)在模块或窗体级声明的变量,在所有项目的任何过程中都可。
STATIC 关键字
普通的局部变量在过程结束后释放,在下次执行过程时重新初始化为0。用STATIC声明的局部变量在过程结束后不被释放,仍保留变量的值。
例:Sub P()
Static a As Integer
a = a + 1
Msgbox "A=" & a
End Sub
常量
常量是程序中不发生变化的值。它和变量一样有三种作用域。它的语法定义如下:
[Public] Const con [As Type] = expression
[Private] Const con [As Type] = expression
数据类型转换
VB自动完成某些数据转换,为提高运行速度,我们通常使用CType()函数显式的转换。
VB的转换函数包括:
CBool 转换为Boolean类型
CByte 转换为Byte类型
CCur 转换为Currency类型
CDate 转换为Date类型
CDbl 转换为Double类型
CInt 转换为Integer类型
CLng 转换为Long类型
CSng 转换为Single类型
CStr 转换为String类型
CVar 转换为Variant类型
CVErr 转换为Error类型