vb用户自定义的数据类型

合集下载

VB中的数据类型

VB中的数据类型
“Hello” “We are students” “VB 程序设计” “” 默认是变长字符串 0-20亿字符 定长字符串 :星号 常数 表明字符串长度 1~65535 个 字符 例:
Dim str1 as string * 8
2. 数值:分为整数和实数两类。 (1)整数 整型数在机器内部以2字节二进制形式表示。 VB中用±n[%]来表示整数,其中%为整数 的类型符,可以省略。 如-123%、123%都表示整数,可表示数值 范围为-32768~+32767; 长整型数在计算机中用4个字节存储, & 可 表 示 数 值 范 围 为 -2147483648 ~ +2147483647。
VB中的数据类型
Vb的数据类型分为: 基本数据类型 自定义数据类型
整型Integer %
整 数 长整型Long & 字节型Byte 单精度型Single ! 实数
VB 基 本 数 据 类 型
数值型
双精度型Double #
货币型 currency @
字符串型String $
定长 变长
精确到小数点后4位,
为了显式地指明常数类型,可以在常数后面加上类型说明符: % 整型 # 双精度浮点数 & 长整型 @ 货币型 ! 单精度浮点数 $ 字符串型
2. 符号常量: 3. 用固定的符号来表示常量,代替数值或字符串
[Private|Public] const 常量名[As 类型]=表达式
例: Const NAME As String ="LiLin” Const NUM As Integer= 4450 Const Pi!=3.14159 Const MAX As Integer=&O155 说明:可以在常量名后面加上类型说明符; 定义符号常量后,定义变量时要注意。 Const Num As Integer = 45 Num!、Num#、Num%等,不能再做为常量名或变 量名。 符号常量一般用大写字母定义以示区别。

VB中常用的定义

VB中常用的定义

一、定义变量类型(如:public 变量名as 数据类型):Public声明全局变量,整个工程(project)可访问dim声明普通局部变量如果定义在事件内部(即在Private Sub ****()程序内),程序执行跳出事件后,数据会丢失如果定义在模块内部(即程序最顶部),程序执行跳出事件后,数据则得以保留static声明静太局部变量其值会保留程序运行到其定义处时不会将其值再次初始化private在窗体模块或过程中声明局部变量为私有变量,不能跨模块使用,用于模块(form)中,是私有的,申请的变量一直存在,除非你移除了本模块VB变量的规则:1 不能以数字开头2 不能带有系统保留字3 可以是数字字母结合的方式4 名字只能由字母、数字和下划线组成5 首字只能是英文字母或汉字(仅限中文版)Abs 就是个系统保留字它的含义是取得绝对值二、VB中常用的数据类型:一、整数值:1、整型(Integer)---% (-32,768至32,767之间2、长整型(Long)---& (-2,147,483,648至2,147,483,647之间二、浮点数:由符号、指数及尾数组成12.45E+5 :表示单精度数12.45*10^512.3456D+5 :表示双精度数12.3456*10^51、单精度型(Single)---!2、双精度型(Double)---#三、其他:1、货币型(Currncy)---$2、字符串型(String)---@3、布尔型(boolean)(真:true / 假:false4、日期型(date) #mm/dd/yyyy# (1/1/100至12/31/9999当需要特别指明常量是哪一种类型时,课在数据的后面加类型说明符,如:12.34#为双精度、456.78@为货币型三、自定义数据类型用户可以定义自己的数据类型,使用关键字“Type”,方法是:Type 【数据类型名】<属性名> As <数据类型><属性名> As <数据类型>···End Type下面的程序就可以调用此数据类型了如:定义一个学生资料数据:(包括班级、姓名、学号)Private Type studentbangji As Stringxingming As Stringxuehao As StringEnd TypePrivate Sub Command1_Click()Dim zhangsan As studentzhangsan.bangji = "软件101"zhangsan.xingming = "张三"zhangsan.xuehao = "12345678"End Sub。

VB_数据类型

VB_数据类型

“&”表示长整型数据。

如-334&,67785649&。

整数(Interger)和长整数(Long)均用于保存整数,其可以是正整数、负整数或者0。

例如:369、-369、+369均表示整数,而369.0就不是整数;-9993977、12345678均表示长整数,而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.45、0.12345E+3、123.45!都是同值的单精度数。

如果某个数的有效数字位数超过7位,当把它定义为单精度变量时,超出的部分会自动四舍五入。

4.双精度数(Double)。

双精度数也是带小数点的实数,有效数字为15或16位,在机器内用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之间的无符号整数,不能表示负数,在机器内用一个字节存储。

VB数据类型

VB数据类型

VB数据类型VB数据类型数据:是指能够输入到计算机中,并能够被计算机识别和加工处理的符号的集合。

是程序处理的最小对象。

例:数值、字符、图形、图像和声音等都是数据。

数据在程序中以常量或变量的方式被引用,不同的数据特点有不同的存储要求和处理算法,数据类型这一概念可以用来区别不同的数据特点。

VB中有系统定义的基本数据类型,而且允许用户根据需要定义自己的数据类型。

1.基本数据类型(11种)数据类型类型名存储空间范围类型说明符整型 Integer 2字节 -32768~32767 %长整型 Long 4字节 -2147483648~2147483647 &单精度型 Single 4字节 -3.402823E38~-1.401298E-451.401298E-45~3.402823E38 !双精度型 Double 8字节 #货币型 Currency 8字节-922337203685477.5808~922337203685477.5807 @字节型 Byte 1字节 0~255字符串型 String 1~65535字节 $布尔型 Boolean 2字节 True 或False日期型 Date 8字节 100.1.1~9999.12.31对象型 Object 4字节任何对象的引用可变类型 Variant 可以成为上边所有类型2.1.1 常量常量:在程序的执行过程中,其值保持不变的量。

分常数和符号常量。

1.一般常数*数值常数:123,1.23,1.0E2,12.5D3*字符串常数:”abc”,”你好”*逻辑常数:True False*日期常数:(用#括起来),#15/9/2002# #January 1,1993# #1 Jan 93# #2002-9-9 10:30:30 pm#常数的类型:在常数的后加类型说明符指定常数的类型如:-58& 3.1# 3.1@2.符号常量符号常量:在程序中用标识符表示的常数。

VB-第6章 数组与自定义类型

VB-第6章 数组与自定义类型
6 6
数组的概念
数组并不是一种数据类型,而是一组相同类型数据的 集合。用一个统一的名字(数组名)代表逻辑上相 关的一批数据,每个元素用下标变量来区分;下标 变量代表元素在数组中的位置。 其表示形式: A(1),A(10) X(1,1), X1(1,10), X(2,10) Y(0,0,0), Y(1,2,5) Dim mark(1 to 100) as integer
4 4
若要求一个班100个学生的平均成绩,然后 统计高于平均分的人数。
aver = 0 :sum = 0 For i = 1 To 100 mark = InputBox("输入" + i + "位学生的成绩") sum = sum + mark Next i aver = sum / 100
mark是一个简单变量,存放的是最后一个学生的成绩。 已有知识解决方法:再重复输入成绩,带来两个问题: (1)输入数据的工作量成倍增加; (2)若本次输入的成绩与上次不同,则统计的结果不正确。 解决此问题的根本方法,引入数组,始终保持输入的数据, 一次输入,多次使用。
7 7
数组的概念
Visual Basic中的数组,按不同的方式分为以下几类:
按数组的大小(元素个数)是否可以改变来分为: 静态(定长)数组、动态(可变长)数组。 按元素的数据类型可分为: 数值型数组、字符串数组、日期型数组、变体数组等。 按数组的维数可分为: 一维数组、二维数组、多维数组。 对象数组:菜单对象数组、控件数组。
Preserve参数:保留数组中原来的数据
24
24
说明
(1)ReDim语句是一个可执行语句,只能出现在过程中,并且 可以多次使用,改变数组的维数和大小。 (2)定长数组声时中的下标只能是常量,而动态数组ReDim 语 句中的下标是常量,也可以是有了确定值的变量。 例: Private Sub Form_Click() dim a() Dim N As Integer N=Val(InputBox(“输入N=?”)) reDim a(N) As Integer „„. End sub

VB基本数据类型

VB基本数据类型
14个字节
Date(日期型)
dt
100年1月1日到9999年12月31日
8个字节
Object(对象型)
obj
任何Object引用
4个字节
String(字符型)变长
srt
$
0到大约20亿
10字节加字符串长度
String(字符型)定长
1到大约65,400
字符串长度
Variant(变体类型)数字
vnt
任何数字值,最大可达Double的范围
sng

负数时从-3.402823E38到-1.401298E-45;正数时从1.401298E-45到3.402823E38
4个字节
Double(双精度浮点型)
dbl
#
负数时从-1.79769313486232E308到-4.94065645841247E-324;正数时从4.94065645841247E-324到1.79769313486232E308
类储空间大小
Byte(字节型)
byt
0到255
1个字节
Boolean(逻辑型)
bool
True或False
2个字节
Integer(整型)
int
%
-32,768到32,767
2个字节
Long(长整型)
lng
&
-2,147,483,648到2,147,483,647
4个字节
Single(单精度浮点型)
16个字节
Variant(变体类型)字符
与变长String有相同的范围
22个字节加字符串长度
自定义类型(利用Type)
每个元素的范围与它本身的数据类型的范围相同。

VB中的数据类型

VB中的数据类型

VB中的数据类型
1.Boolean 布尔型,这种类型,只有真、假(即true or false)两个值,它占⽤两个字节。

2.Byte 字节型他占⽤⼀个字节,他的范围是0—255
3.Integer 整型它占⽤两个字节,通常⽤%来表⽰,例a%;它占⽤2个字节(C语⾔中为4个字节),它的范围是0----32768/32767
4.Long 长整型它占⽤4个字节,它的简写符号是&,它的范围是-2147483648到2147483647。

对于整型和长整型,我们通常会选⽤长整型,尽管长整型⽐较⼤,但是相对于整型会⽐较快,因为CPU⼀般是32位的,长整型可以⼀次把数据存储到寄存器⾥或CPU⾥⾯,还有长整型的兼容性⽐较好。

5.Single 单精度浮点 4个字节。

范围⽐较⼤,但是精度很⼩,在科学计算时,不⽤改精度,它的符号是!
6.double 双精度浮点 8个字节,符号式#,它的精度远远⼤于单精度浮点。

7.String 字符串 a.可变长字符串,⽤于读取⽂件,⽂本查找等。

B.定长字符长
8.Date ⽇期形式是 #…………#,如20011年11⽉11⽇可表⽰为 #2011/11/11#
9. Currency @表⽰符
10. User Defined
11.Variant 可变类型在VB下,变量可以不声明,不同于以上类型,赋值后,可以对他进⾏其他类型的赋值,例如原先是⼀个字符串,后来再给他赋为⽇期。

Variant类型的格式:
类型变量(如整型)相应数据、地址
Variant的缺点是占⽤内存较⼤,速度慢;⽅便之处是使⽤灵活
VB中的数据类型并不是孤⽴的,他们之间可以⽤转换函数来相互转换。

Chap.3 VB语言基础2

Chap.3 VB语言基础2
量不经过声明就直接使用,这种称为隐式 中允许变量不经过声明就直接使用, 中允许变量不经过声明就直接使用 声 所有隐式声明的变量都是变体型。 明,所有隐式声明的变量都是变体型。
3.2.2 常量
1. 直接常量 直接常量指在程序中直接给出值的数据, 直接常量指在程序中直接给出值的数据,如: 123、123.45、1.234E2、123D3分别表示整型 、 、 、 分别表示整型 单精度浮点型(小数形式)、单精度浮点型( )、单精度浮点型 、单精度浮点型(小数形式)、单精度浮点型( 指数形式)、双精度浮点型。 )、双精度浮点型 指数形式)、双精度浮点型。 八进制常数:在数值前加&O,如&O345。 八进制常数:在数值前加 , 。 十六进制常数:在数值前加&H, 十六进制常数:在数值前加 ,如&H345。 。
2. 变量的声明
(1)用类型说明符来标识变量类型 ) 把类型说明符放在变量名的尾部, 把类型说明符放在变量名的尾部,可以标识不同 的变量类型。其中$表示字符串型 表示字符串型, 表示整型 表示整型, 的变量类型。其中 表示字符串型,%表示整型, & 表示长整型, 表示单精度型 表示单精度型, 表示双精度型 表示双精度型, 表示长整型,!表示单精度型,#表示双精度型,@ 表示货币型。 表示货币型。
3.3 运算符和表达式
3.3.2 逻辑运算符
运算符 Not Not F Not T T And T 两个操作数均为真时, 两个操作数均为真时 , 结 F And F 与 T And F 果才为真 F And T T Or T 两个操作数中有一个为真 F Or F 或 T Or F 时,结果为真 F Or T 两个操作数不相同, 异 两个操作数不相同 , 结果 T Xor F 或 才为真,否则为假 才为真, T Xor T 含 说明 义 取 当操作数为假时,结果为 当操作数为假时, 反 真 示例 结果 T F T F F F T F T T T F
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

用户自定义的数据类型------记录
保存多个相同或不同类型数值的结构称为记录(record)。

在VISUAL BASIC 中定义记录,用Type语句,其语法如下:
Type varType
Variable1 As varType
Variable2 As varType

Variablen As varType
End Type
例如定义一个名为CheckRecord的记录:
Type CheckRecord
CheckNumber as Integer
CheckDate as Date
CheckAmount as Single
End Type
CheckRecord结构可以像普通变量类型一样使用。

要定义这个类型的变量,使用如下语句:
Dim check1 As CheckRecord
要对结构的各个字段访问,可使用如下语句:
check1. CheckNumber=123
check1. CheckDate=#08/14/1996#
check1. CheckAmount=240.00
例:
简单例(自定义类型1.frm)
数组自定义类型1.FRM
用一维数组存放学生年龄。

并可通过学生姓名输入或显示该学生的年龄。

Private Type StudentInformation
StudentAge As Integer
StudentName As String
End Type
Dim N As Boolean
Dim Information(1 To 4) As StudentInformation
Dim infIndex As Integer
Dim stuName As String
Private Sub cmdInputname_Click()
For i = 1 To 4
Information(i).StudentName = InputBox("PL input name")
Next i
End Sub
Private Sub cmdInput_Click()
infIndex = 1
N = False
stuName = txtName.Text
Do While infIndex <= 4
If Information(infIndex).StudentName = stuName Then Information(infIndex).StudentAge = Val(txtAge.Text)
N = True
Exit Do
End If
infIndex = infIndex + 1
Loop
If N = False Then
MsgBox "invalid student name", vbInformation, "data error" End If
txtName.Text = ""
txtAge.Text = ""
End Sub
Private Sub cmdOutput_Click()
infIndex = 1
N = False
stuName = txtName.Text
Do While infIndex <= 4
If Information(infIndex).StudentName = stuName Then txtAge.Text = Information(infIndex).StudentAge
N = True
Exit Do
End If
infIndex = infIndex + 1
Loop
If N = False Then
MsgBox "invalid student name", vbInformation, "data error" End If
End Sub
Private Sub cmdExit_Click()
End
End Sub。

相关文档
最新文档