资源预览内容
第1页 / 共47页
第2页 / 共47页
第3页 / 共47页
第4页 / 共47页
第5页 / 共47页
第6页 / 共47页
第7页 / 共47页
第8页 / 共47页
第9页 / 共47页
第10页 / 共47页
亲,该文档总共47页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
,第2章 Visual Basic的基本语法,数据类型,变量和常量,标准函数.,运算符与表达式,基本语句,数组,子程序,函数,文件的操作,各自展开为章节,字节(byte)和位(bit) 内存以字节为单元组成 每个字节有一个地址 一个字节一般由8个二进制位组成 每个二进位的值是0或1,数据类型决定: 1. 数据占内存字节数 2. 数据取值范围 3. 可进行的操作,字节型(byte),布尔型( boolean ),日期型(date)ex: # january 1,2008 #,通用型(Variant)也称变体型,货币型 currency 精确到小数点后4位,小数点位置不变的定点数据类型,VB 基 本 数 据 类 型,字符串型String $,整 型,浮点型,数值型,Vb的数据类型分为: 基本数据类型 自定义数据类型,一、数据类型,数据是程序的必要组成部分,也是程序处理的对象。 基本数据类型 VB提供的基本数据类型主要有字符串型数据和数值型数据。此外还提供了字节、货币、对象、日期、布尔和变体数据类型。 字符串(String) 例: “Hello” “We are students” “VB 程序设计” “” 默认是变长字符串 0-20亿字符 定长字符串 :星号 常数 表明字符串长度 165535 个字符 Dim str1 as string * 8,(2)浮点数 浮点数也称为实型数或实数,由符号、指数和尾数组成,分单精度浮点数(Single)和双精度浮点数(Double),其指数部分分别用“E”(或“e”)和“D”(或“d”)表示。 例: 123.45E3 或 123.45e+3 123.45678D3 或 123.45678d+3 单精度型(Single)以4个字节(32位)存储,符号占1位, 指数占8位,尾数23位,此外还有一个附加的隐含位。 单精度型的数据可以精确到7位十进制数。 其负数的取值范围为 -3.402823E+38-14.40129E-45, 正数的取值范围为 -1.40129E-453.402823E+38。 双精度型(Double)用8个字节(64位)存储,符号位占1 位,指数占11位,尾数52位,此外还有一个附加的隐含位。双 精度型的数据可以精确到15或16位十进制数。其负数的取值范 围为-1.797693134862316D+308-4.94065D-324,正数的取值 范围为4.94065D-3241.797693134862316D+308。,货币(Currency) 货币型(Currency)是一种专门为处理货币而设计的数据类型,保留小数点右边4位和小数点左边15位,在计算机中用8个字节存储。如果变量已定义为货币型,且赋值的小数点后超过4位,那么超过的部分自动四舍五入。小数点是固定的,因此称定点数据类型。 变体(Variant) 变体数据类型是一种可变的数据类型,可以表示任何值,包括数值、字符串、日期/时间等。,其他数据类型 (1)字节(Byte):用1个字节的无符号二进制数存储,取值范围为0255。 (2)布尔(Boolean):逻辑型数据用2字节二进制数存储。存放只可能为 True 或 False 的值。Boolean 的默认值为 False。当 Visual Basic 将数字数据类型值转换为 Boolean 时,0 变为 False,所有其他值变为 True。当 Visual Basic 将 Boolean 值转换为数字类型时,False 变为 0,True 变为 -1。 (3)日期(Date):64位浮点数值存储, 表示的日期从公元100年1月1日9999年12月31日, 时间范围为00:00:0023:59:59。 任何可辨认的文本日期都可以复制给日期变量 日期文字的标准格式:mm/dd/yyyy or mm-dd-yyyy : 11/18/2008 or 11-18-2008 日期文字以一对数字符号# #括起来。 例: #03/10/2000# #2000-03-10# #January 15,2002# #1985-10-1 9:45:00 PM#,(4)对象(Object):通过32位(4字节)来存储,表示图形或OLE对象或其他对象。,用户定义的数据类型 用户可以利用Type语句定义自己的数据类型,格式: Type 数据类型名 数据类型元素名 As 类型名 End Type 例: Type Students Name As String * 8 Age As Integer Address As String * 20 End Type,注意: (1)自定义类型在使用之前,必须先在标准模块或窗体模块的声明部分定义,在标准模块中定义时默认为全局变量(Public)。在窗体模块定义时在关键字Type前应加上Private关键字。 (2)自定义类型如果包含有字符串类型元素,则必须是定长字符串,即应该使用形式为:strName As String*常数 其中“常数”指明定长字符串的长度。,二、常量和变量,常量:程序执行期间,值不会发生变化。可分为文字常量和符号常量。 文字常量: 也称为字面量(Literal),可分为字符串和数值。 (1)字符串常量 用双引号括起来的一串字符,长度不能超过65535个字符 (定长字符串)或231个字符(变长字符串)。每个字符占用一个字节,如果是汉字,占用两个字节。 例: “$2500.00” “Number of Employees” (2)数值常量:整型数、长整型数、货币型数和浮点数,整型数:十进制、十六进制、八进制 十进制整型数:可带有正号或负号,范围-3276832767 例: 624 - 4536 +265 十六进制整型数:前面冠以 a; ; b=; b a = a + 1 b = b + 1 End Sub,Print方法的调用格式和功能。 格式:对象.Print表达式表,l; 功能:Print方法可以在相应的对象上显示文本和表达式的值。,Public 在标准模块中定义全局变量或数组。 例: Public Total As Integer Redim 定义数组。,注意: (1)实际应用中,能用整型的就不要用浮点型变量;如果要求精度不高,则应使用单精度变量,可节省内存空间,提高运行速度。 (2)用类型说明符定义的变量,在使用时可以省略类型说明符。 例: Dim aStr$ 则可用aStr$和aStr来引用这个变量。 aStr = “This is a string” aStr$ = “This is a String”,变体类型变量 (1)Variant变量的定义:可以用普通数据类型变量的格式定义,也可以使用默认定义。 例:Dim SomeValue As Variant Dim SomeValue SomeValue “100” (存入字符串“100”) SomeValue SomeValue10 (SomeValue变为90) SomeValue “ABC” SomeValue (SomeValue变为字符串ABC90),注意: 如果对Variant变量进行算术运算,必须确保变量中存放的是某种形式的数值,包括整数,浮点数,定点数等。 运算符“”可以用于数值相加,还可用于字符串的连接。为了避免运算出错,字符串连接最好用运算符“ “号去吧 End Sub,转换函数,【例3.2】 在窗体上添加一个文本框和一个命令按钮。当运行程序时,向文本框中输入一个字符,单击命令按钮,在窗体上显示该字符的ASCII码。 Private Sub Command1_Click() Print ASCII 是: ; Asc(Text1.Text) End Sub,类型转换函数 每个函数都可以强制将一个表达式转换成某种特定数据类型。,日期/时间函数,【例3.3】 了解Date、Time、Now和VarType等函数的使用。窗体上只有一个命令按钮,其Caption属性为“使用日期函数”。 Private Sub Command1_Click() Print Now :; Now, VarType(Now) Print Date:; Date, VarType(Date) Print Time:; Time, VarType(Time) Print Day :; Day(Now), VarType(Day(Now) End Sub,说明: (1)日期和时间函数的自变量Now是个内部变量, 不需要用户定义。 (2)在“立即”窗口中演示,日期函数 命令行解释程序(Command Line Intepreter,CLI): 通过命令行直接显示函数的执行结果。这种方式称为直 接方式,在“立即”窗口中执行。,字符处理与字符串函数 字符处理机制 早期:一个西文字符占一个字节,一个中文字符占两个字 节。这种处理机制称为ANSI方式。 现在:每个字符均用两个字节编码。这种处理机制称为 UniCode方式(统一编码方式)。 例:Print Len(“BASIC程序设计”) Print Lenb(“BASIC程序设计”),例: Private Sub Command1_Click() Dim tempStr As String, newStr As String tempStr = BASIC程序设计 Print tempStr=; tempStr Print LenB(tempStr) newStr = StrConv(tempStr, vbFromUnicode) Print Print 执行newStrStrConv(tempStr,vbFromUniCode)后: Print newStr; newStr Print LenB(newStr); LenB(newStr) Print Len(newStr); Len(newStr) Print newStr = StrConv(newStr, vbUnicode) Print 执行newStrStrConv(newStr,vbUniCode)后: Print newStr; newStr Print LenB(newStr); LenB(newStr) Print Len(newStr); Len(newStr) End Sub,VB用StrConv的转换函数进行ANSI和UniCode之间的转换: 新字符串StrConv(待转换字符串,转换格式) 两种转换格式:vbUnicode:ANSIUniCode vbFromUniCode:UniCodeANSI,字符串函数,SHELL函数,作用:执行一个可执行文件,返回一个 Variant (Double),如果成功的话,代表这个程序的任务 ID,若不成功,则会返回 0。 格式:Shell(“命令行”,3) 参数2的取值:0-6 3具有焦点的最大化窗口。 0 窗口被隐藏,且焦点会移到隐式窗口。 1 窗口具有焦点,且会还原到它原来的大小和位置。 2 窗口会以一个具有焦点的图标来显示。 3 窗口是一个具有焦点的最大化窗口。 4 窗口会被还原到最近使用的大小和位置,而当前活动的窗口仍然保持活动。 6 窗口会以一个图标来显示。而当前活动的的窗口仍然保持活动。,四、运算符与表达式,算术运算符 算术运算符用于数学计算,VB有9个算术运算符(其中减 号运算符和取负运算符形式相同),在这9个算术
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号