《【教学课件】第五章语法基础.ppt》由会员分享,可在线阅读,更多相关《【教学课件】第五章语法基础.ppt(20页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第五章第五章 语法基础语法基础数据类型数据类型常量常量变量变量运算符运算符数组数组 数据类型(数据类型(1)一用于保存数字的几种数字类型一用于保存数字的几种数字类型Interger16位整型位整型Long32位整型位整型Single32位单精度浮点位单精度浮点Double64位双精度浮点位双精度浮点Currency64位精确定点位精确定点(整数整数15位小数位小数4位位)Byte8位字节型位字节型数据类型(数据类型(2)二用于进行逻辑判断的二用于进行逻辑判断的Boolean类型类型16位位,取值只有取值只有True和和False从其它数据类型转换为从其它数据类型转换为Boolean时时0转成转
2、成False,其它值为其它值为True从从Boolean转换为其它数据类型时转换为其它数据类型时False转成转成0,True为为-1数据类型(数据类型(3)三用于保存字符串的三用于保存字符串的String类型类型双引号括起双引号括起变长变长String,最多,最多231个字符个字符如如:Dim temp As string定长定长String,最多最多216,不足字符以空格填充不足字符以空格填充如如:Dim temp As string *100数据类型(数据类型(4)四用于保存日期的四用于保存日期的Date类型类型64位位,识别多种日期格式识别多种日期格式,除汉字日期以外除汉字日期以外如如
3、:Dim birthday As Datebirthday=#12/5/78#birthday=#1990-12-5 12:00:00 AM#birthday=#January 1,1993#取值范围为:取值范围为:100年年1月月1日日9999年年12月月31日日数据类型(数据类型(5)五用于保存对象引用的五用于保存对象引用的Object类型类型32位位,保存对对象的引用(地址),只能用保存对对象的引用(地址),只能用Set语语句赋值句赋值六六.万能的万能的Variant类型(变体型)类型(变体型)Dim temp几种特殊取值:几种特殊取值:Empty值:在赋值前,值:在赋值前,Varian
4、t型变量具有该值。型变量具有该值。Null值:空值,用于数据库,表示未知、尚未赋值:空值,用于数据库,表示未知、尚未赋值的数据。不同于值的数据。不同于0、零长度字符串。、零长度字符串。Error值:指出运行中的错误状态。值:指出运行中的错误状态。数据类型(数据类型(6)七自定义数据类型七自定义数据类型Type 自定义类型名自定义类型名元素名元素名 As 数据类型数据类型元素名元素名 As 数据类型数据类型元素名元素名 As 数据类型数据类型.End Type类似于类似于C语言中的结构类型语言中的结构类型如:如:Type Student ID as long Name as string*10E
5、nd TypeDim Stu1 As StudentStu1.Name=“zhang”数据类型(数据类型(7)如:如:Public Enum ColorsWhiteRed Green End EnumDim temp As ColorsTemp=GreenPrivate|Public Enum 自定义类型名自定义类型名元素名元素名 As 数据类型数据类型End Type八自定义枚举类型八自定义枚举类型Public|Private Const 常量名常量名=表达式表达式如:如:Const conPi=3.1415926有两类常量:有两类常量:用户自定义常量用户自定义常量 系统常量(以系统常量(以
6、VB开头),比如回车换行符开头),比如回车换行符vbCrlf、vbRed、vbCancel等等等等常量常量变量名称变量名称如何声明如何声明使用使用变量的作用域变量的作用域变量变量一合法变量名一合法变量名以中英文字符开头,可以包含英文字母、中文、数以中英文字符开头,可以包含英文字母、中文、数字、下划线;字、下划线;不能是系统已有的关键字,如不能是系统已有的关键字,如Date、if、End;不能超过不能超过255个字符;个字符;在同一作用范围区域中必须唯一,比如同一个事件在同一作用范围区域中必须唯一,比如同一个事件过程中不能有两个同名的变量。过程中不能有两个同名的变量。变量的命名变量的命名Publ
7、ic|Private|Static Dim 变量名变量名 As 类型类型如:如:*局部变量局部变量Dim temp As Interger*模块级变量模块级变量Public temp As Interger 整个工程有效整个工程有效(模块声明段中模块声明段中)Private temp As Interger 当前窗体有效当前窗体有效*静态变量静态变量Static temp As Interger 退出过程不释放退出过程不释放*隐式声明就是不声明而直接就使用一个变量隐式声明就是不声明而直接就使用一个变量*显式声明比隐式声明更安全,显式声明比隐式声明更安全,Option Explicit语句强制要
8、语句强制要 求变量进行显式声明(或通过菜单的选项对话框设定)求变量进行显式声明(或通过菜单的选项对话框设定)变量的声明变量的声明我们会强制要求先声明后使用,即显式声明。原因:我们会强制要求先声明后使用,即显式声明。原因:1.1.变变量量不不声声明明而而直直接接使使用用,这这些些未未声声明明的的变变量量都都是是VariantVariant类类型型,当当需需要要指指明明数数据据为为具具体体类类型型形形式式时时需需要要额额外外的的处处理理,也也缺缺乏乏必必要的类型检测;要的类型检测;2.2.在在使使用用已已有有变变量量时时可可能能会会错错误误地地拼拼写写了了该该变变量量,而而系系统统会会认认为为它它
9、是是隐隐式式声声明明的的另另一一个个变变量量,而而检检查查不不出出错错误误;反反之之若若采采用用显显式式声声明明方方式式,系系统统强强制制所所有有变变量量必必须须先先声声明明,在在编编译译时时一一旦旦发发现使用了未经声明现使用了未经声明的变量名(如写错)的变量名(如写错),就会报告错误。,就会报告错误。在每个文件代码的通用段在每个文件代码的通用段(首行首行)增加一条设置语句:增加一条设置语句:Option ExplicitDim MyVar声明变量。声明变量。MyInt=10未声明变量产生错误。未声明变量产生错误。MyVar=10声明变量不产生错误。声明变量不产生错误。严格要求变量声明严格要求
10、变量声明变量的简易声明方式变量的简易声明方式VB还提供了一种简易的声明方式,只要变量还提供了一种简易的声明方式,只要变量名后带有某个特定符号,就代表该变量是某名后带有某个特定符号,就代表该变量是某种数据类型,如种数据类型,如Dim$StudentName数据类型声明字符:数据类型声明字符:Integer%Long&Single!Double#String$变量的作用域变量的作用域全局变量:定义在全局变量:定义在BAS模块中,使用模块中,使用public关键字,关键字,工程中所有文件所有过程共享工程中所有文件所有过程共享如在如在common.bas中:中:Public stuNo As Long
11、模块级变量:定义在模块级变量:定义在BAS模块、窗体或类模块中,使模块、窗体或类模块中,使用用Private或或Dim关键字,整个模块内共享关键字,整个模块内共享如在如在frmMain.frm中:中:Dim stuNo as Long局部变量:定义在一个过程内部,仅限该过程使用局部变量:定义在一个过程内部,仅限该过程使用赋值运算符赋值运算符frmMain.Width=300 给对象属性赋值给对象属性赋值(数值数值)frmTest.Caption=“Hello”给对象属性赋值给对象属性赋值(字符串字符串)temp=temp+1 给普通变量赋值给普通变量赋值flag1=true给普通变量赋值(布尔
12、)给普通变量赋值(布尔)orderDate=#2002-12-20#给普通变量赋值(日期)给普通变量赋值(日期)Dim a As FormSet a=New Form1给对象变量赋值给对象变量赋值VB在进行赋值运算时,在进行赋值运算时,会自动进行类型转换会自动进行类型转换 注释语句注释语句以下循环计算总成绩以下循环计算总成绩VB中进行运算中进行运算一、算术运算一、算术运算+加法加法-减法减法*乘法乘法/浮点数除法浮点数除法整数除法整数除法指数指数如如 temp=32MOD求余数求余数二、比较运算二、比较运算 =Like Is三、连接运算三、连接运算&强制两个表达式作字符串连接强制两个表达式作字符串连接+如果有数字,则作相加运算,否则作字符串连接如果有数字,则作相加运算,否则作字符串连接比较:比较:ABA&BA+B“123”“3”“1233”“1233”1233“1233”126“123”3“1233”126“123a”3“123a3”报错报错VB中进行运算中进行运算VB中进行运算中进行运算四、逻辑运算四、逻辑运算NOT非非OR或者或者AND并且并且XOR异或异或EQV等价等价IMP蕴含蕴含*运算的优先顺序运算的优先顺序*算术运算算术运算 逻辑运算逻辑运算高高 not -(负负)and */or xor modeqv +-imp低低&