您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 公司方案 > vb语言基础-数据类型
1第三章VB语言基础3.1数据类型3.2变量和常量3.3运算符和表达式3.4程序结构和编码规则3.5综合应用本章目录23.1数据类型标识符:是为变量、常量、数据类型、过程、函数和类等定义用的名字。VB中命名规则如下:以字母或汉字开头,后可跟汉字、字母、数字或下划线组成,长度小于等于255个字符;不要使用VB中的关键字;33.1数据类型数据类型复合数据类型基本数据类型字符型逻辑型日期型变体型对象型数值型整数浮点数货币型字节型整型长整型单精度型双精度型自定义数据类型数组本章目录41、整数定义:不带小数点和指数符号的数。特点:数精确表示,但数范围有限。类型:整型Integer或%(默认)长整型Long或&。形式:±n[&]例:123、123%、123&、+123正确的整数123.0、1,230错误52、实数:定义:带小数点或指数符号的数。特点:数精不精确表示,但数范围大。类型:单精度Single或!,双精度Double或#。形式:尾数[E|D指数]其中:E表示单精度指数符号、D表示单精度指数符号尾数可以整数(必须要求指数)也可以小数例:123.45、123.45!、0.12345E+3、12345E-2、0.12345D+3都是同值实数63、逻辑型数据(Boolean)逻辑型数据只有两个值:真(True)和假(False)注意:当把数值型数据转换为逻辑型数据时,0转换为False,非0值转换为True。当把逻辑型数据转换为数值型数据时,False转换为0,True转换为-1。7思考:下列语句的执行结果是:DimTagAsBooleanTag=68PrintTag结果为:True84、日期型数据(Date)形式:#……#一般为:月/日/年VB接受许多种日期时间格式例:下面的Date/Time值全部有效。#3-6-9313:20##March27,19931:20am##Apr-2-93##14April1993##12/18/1999#95、字符串型数据(String)形式:字符串例:abcABC计算机12.343+2(空串)注意:如果字符串本身包括双引号,可用连续两个双引号表示。例:要打印以下字符串:Youmuststudyhard,hesaid.在程序中需要将该字符串表示成:Youmuststudyhard,hesaid.103.2变量和常量变量:是内存中保存信息(值)的内存区域,在程序运行中其存储的值可以改变。不同数据类型变量所分配的存储空间不同变量名命名规则:必须以字母或汉字开头,由字母、汉字、数字或下划线组成,长度小于等于255个字符不能使用VB中的关键字VB不区分变量名的大小写,一般变量名首字母用大写,其余用小写字母表示;常量全部用大写字母表示本章目录表达式:s=3.14*r*r其中:r、s是变量,3.14是常量3xy'数字开头y-z'不允许出现减号WangPing'不允许出现空格Dim' VB.NET的关键字Cos'标准函数名非法变量名11变量的命名规则例:下列为非法变量名的是。A、stud.noB.st_addC.Bool*D.mass_4E.#12diskF.924k下列为合法变量名的是。A、4*DaleB、AlphaC、LOOPD、PAπE、A(A+B)F、C23AG、dimACEFBF12变量声明(1)用Dim语句显式声明变量Dim变量名[As类型]或Dim变量名类型符例DimiCountAsinteger,sAllsumAssingle等价于DimiCount%,sAllsum!As部分缺省,创建的变量为变体类型注意:一条Dim语句可同时定义多个变量,但每个变量应有类型说明,否则为变体型。例如:Dimm,nAsInteger,x,yAsSingle则创建了变体型变量m、x,整型变量n和单精度型变量y表示整型13也可以用常用的类型说明符来定义:整型:%长整型:&单精度:!双精度:#货币型:@字符型:$14变量类型:数值型变量DimcountasInteger或dimcount%Dimlongcountaslong或dimlongcount&StaticDimaassingle或staticdima!publicbasdouble或publicb#字符串型变量StaticDimcheasstring或staticdimche$Dimaaasstring*5‘表示只接收5个字符的变量(长度固定)日期型变量Dimdatasdate赋值:dat=#10/29/98#日期变量可进行加减运算,但不能乘除变量名类型名类型符15布尔型变量(逻辑变量)缺省值为false(0),结果两种状态true(-1)或false(0)进行逻辑运算:NOT、AND、OR、XOR对象型变量object利用它访问实际对象变体型变量variant未具体指名类型的,如:dimbb或未声明就引用的变量PrivateSubForm_Click()DimaaAsString*10aa=abcdefghijklmnopqrstbb=fkfkdsPrintaa,bbbb=567PrintbbEndSubAbcdefghijfkfkds56716变量的数据类型类型关键字长度数值范围说明Integer2/16-32768~32767(-215~215-1)整型Long4/32-2147483648~2147483647长整型Single4/323.4e-38~3.4e+38单精度实型Double8/641.7e-308~1.7e+308双精度Char1/8(存放ASCII码)字符型Boolean1True/False|Yes/No布尔型数据Date#11/18/2002#|{6/21/2002}日期型其中:2/16的含义是2个字节,或16位,即1字节=8位,其他类推。八进制、十六进制数&O334&H9Af八进制、十六进制数&O334&&H9Af&17标准数据类型数值数据类型18(2)隐式声明(默认)不声明直接使用。其类型为Variant类型为可变类型,易出错、浪费空间(3)强制显式声明在模块的声明段中使用语句:OptionExplicit如果设置:工具→选项→编辑器→要求变量声明,则在后续模块中自动插入OptionExplicit1920例:DimaasintegerDima%DimBasinteger,stnameasstring,abDimB%,stname$,ab变量声明位置和作用范围过程内部声明变量,只在该过程执行时存在窗体模块、标准模块或类模块中声明变量,在模块中所有过程有效带public关键字声明变量,该变量在整个应用程序中有效带static关键字声明局部变量,过程运行结束,但值保留21常量常量是在程序运行中不变的量,VB有三种常量:直接常量字符串常量:用双引括起,例“asdfg”、”12345”逻辑常量:只有true和False两个值整数常量:有三种形式,如1234(十进制)、&H12A(十六进制,以&H开头)、&O123(八进制,以&O或&开头)长整常量:有三种形式,如:12345678(十进制)、&H12A&(十六进制,以&H开头,&结尾)、&O123&(八进制,以&O或&开头,以&结尾)单精度常量:有三种形式:如12.34,123!,123.45E-5双精度常量:有两种形式如:12.34#,123.45D-5日期型常量:用一对##括起,如:#12/27。0001#,#13:30:45#用户自定义常量(符号常量)用户声明,便于程序阅读或修改Const符号常量名[As类型]=表达式例如:ConstPI=3.14159省略[AS类型],常量的类型由表达式值的类型决定。为使与变量名区分,一般常量名使用大写字母。系统常量系统提供许多内部常量系统定义常量位于对象库中,可通过“对象浏览器”查看。例:vbNormalvbMinimized、vbMaximized等注意:避免在不同模块中定义常量时出现循环定义例如:vbCrLf回车/换行组合符223.3运算符和表达式操作数操作数是运算对象可以是常数、变量、函数或表达式运算符表示运算方法的符号,由简单符号表示表达式由运算符连接操作数形成的运算字符序列必须“一行”书写,必要时加括号单对象运算称单目运算,两对象运算称双目运算233.3运算符和表达式运算符和表达式:结果类型算术运算符与算术表达式数值字符串运算符与字符串表达式字符串关系运算符与关系表达式逻辑逻辑运算符与逻辑表达式逻辑运算符及优先级算术运算符^-*\/Mod+-高到低字符运算符+&同级关系运算符===IsLike同级逻辑运算符NotAndOr高到低由高到低241、算术运算符例:5+10mod10\9/3+2^2整数相余433110注意:对算术运算符两边的操作数应是数值型,若是数字字符或逻辑型,则自动转换成数值类型后再运算。例如:30-True结果是31,逻辑量True转为数值-1,False转为数值0False+10+4结果是14结果:10251.算术运算符与算术表达式说明:(1)运算结果的数据类型由精度低的数据类型向精度高的类型转换。(2)整除(\)运算时,被除数先四舍五入为整数然后相除,结果为整数或长整数。(3)Mod运算的结果是整数。(4)在VB中用“\”表示整除,而在其他语言可能不一样,用其他的符号。例:25.36\7.6510\3+225.36mod7.6351262、字符串运算符与字符串表达式字符串运算符:&、+字符串连接123+456结果123456“123”&“456”结果“123456”“ABC”+”123”结果为”ABC123”123&456结果为”123456”(仅VB中可用)区别:+两边必须是字符串,&不一定例如:操作结果操作结果ab&123ab123ab+12出错12&4561245612+45646812&True12True12+True11272、字符串运算符与字符串表达式例如:abcdef&12345'结果为abcdef12345abcdef+12345'出错123&456'结果为123456123+456‘结果为579100+100&100注意:123+True'结果为122True转换为数值-1,False转换为数值0200100282、关系运算符关系运算符是双目运算符,作用是对两个操作数进行大小比较,若关系成立,则返回True,否则返回False。操作数可以是数值型、字符型。运算符例结果=ABCDE=ABRFalseABCDEABRFalse=bc=abcdeTrue233False=233TrueabcabcdeTrue本章目录29关系运算符与关系表达式运算规则1)运算符前后的两个操作数都是数值型,则大小比较2)操作数都是字符型,则按ASCII码值从左到右比较3)两个操作数的类型一般情况下最好一致4)关系运算符的优先级相同,运算时从左到右依次进行30关系运算符与关系表达式关系表达式例如:(31)=(42)0=(42)18.515.4falsetruefalse3、逻辑运算符逻辑运算符除Not是单目运算符外,其余都是双目运算符,作用是将操作数进行逻辑运算,结果是逻辑值True或False。Eqv等价4两个操作数相同时,结果才为真TEqvTTTEqvFF例:(38)Eqv(1020)true例:(23)and(34)false(1523)or(612)true32逻辑运算符真值表ABAAndBAOrBNotATrueTrueTrueTrueFalseTrueFalseFalseTrueFalseFalseTrueFalseTrueTrueFalseFalseFalseFalseTrue设变量X=5,下列表达式的值为True的是:A.(X=5)And(x=8)B.(X=5)And(X=8)C.(X=5)Or(X=8)D.(X=5)Xor(X=8
本文标题:vb语言基础-数据类型
链接地址:https://www.777doc.com/doc-1432698 .html