第2章 语言概述基础.doc_第1页
第2章 语言概述基础.doc_第2页
第2章 语言概述基础.doc_第3页
第2章 语言概述基础.doc_第4页
第2章 语言概述基础.doc_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第二章 VFP程序设计基础2.1 数据类型及数据容器1. 数据类型:数据对象的取值集合。VFP的基本数据类型字段类型代号说明字段宽度 使用示例字符型C由任意字母、数字,空格,汉字和符号组成每个字符为1个字节,最多可有 254 个字符学生的学号或姓名, 8199101 或 李立,ss货币型Y货币单位8 个字节工资, $1246.89日期型D包含有年、月,日的数据8 个字节出生日期,02/25/2000日期时间型T包含有年、月、日、时、分、秒的数据8 个字节上班时间,02/25/2000 9:15:15 AM逻辑型L“真”或“假”的布尔值1 个字节课程是否为必修课,.T. 或 .F.数值型N整数或小数在内存中占 8 个字节;在表中占1 至20个字节考试成绩, 83.5通用型GOLE 对象在表中占 4 个字节图片或声音备注型M不定长度的一段文字在表中占 4 个字节学生简历2. 数据容器VFP中用来存储数据的容器有:常量、变量、数组、记录和对象。(1) 常量(constants):一个在操作过程中保持不变的数值或字符串。常量类型数值型常量字符型常量逻辑型常量日期型常量表示方式-25.36abc,123,中国.T. .F.03/07/2000(2)内存变量(variables):是内存中的一个存储单元的位置,其中的内容可以变化,但标识该存储位置的名称(即变量名)不变。u 变量的赋值方式: 1) 用 STORE 命令 如:STORE 王兰 TO c1,c2,c3 2) 用赋值操作符 “=” 如:c1 = 王兰 u 变量的作用域: 即变量起使用的有效范围。变量作用域定义作用域的关键字特点局部变量LOCAL只能在一个函数或过程中被访问,其他过程或函数不能访问此变量的数据。当其所属程序停止运行时,局部变量将被释放。私有变量PRIVATE私有变量在 VFP 中是默认的,不需要特殊的关键字定义。但是,如果在更高一级例程(routine)中已经有同名变量,可以用PRIVATE 关键字予以声明,以限定其范围。当定义此变量的例程结束时,此变量也被相应释放。可使用私有变量在被调用的函数中共享数据。公共变量PUBLIC可用于所有过程和函数,而不限于定义该变量的过程和函数。可使用全局变量在多个过程或函数之间共享数据,在命令窗口中创建的任何变量自动具有全局属性。u 变量的访问:当变量和字段同名时,字段有优先被访问权。要在变量名前加 m. 或 m - 以示区别,如 m.cStud 例:对学生表中字段进行访问。u 内存变量的保存与恢复内存变量是系统在内存中设置的临时存储单元,当退出VFP时数据自动丢失,可以使用SAVE TO 命令将变量保存到文件中。Save to filename all like 通配符 |all except 通配符Restore from filename additive(3)数组(array):是存储在一个变量中由单个变量名引用的有序数据集合。在 VFP中,一个数组中的数据不必是同一种数据类型。常用的有一维数组,二维数组。u 数组元素的标识:通过一个数值下标来引用,如 AA(2),AA(2,3)u 数组类型的声明:私有数组 用DECLARE 或 DIMENSION定义全局数组 用PUBLIC定义局部数组 用LOCAL定义DIMENSION/DECLARE/PUBLIC/LOCAL AA(2,5)u 数组元素的赋值:AA=45 &给数组的名字赋值相当于给数组中所有元素赋值。AA(1)=45 &给数组中元素赋值。补充:将二维数组转化为一维数组。(4) 记录:表中的一行,由字段组成。 使用命令输出表中的一条记录。Browse/display/list for 2.2 函数 (按照书本的顺序讲解)即:一个预先编制好的模块,可由VFP程序在任何地方调用。函数的使用方法:名称、功能、参数、返回值自定义函数:由用户为自己的应用程序创建的专用函数,可作为独立的程序文件保存在磁盘上也可作为过程文件存放在其他程序中。2.3 运算符及其表达式1. 命令 即:由用户发出的、指示VFP进行某种操作的指令。如 USE aaa & 打开 一个名为 aaa.dbf 的数据表2. 运算符数值运算符( ) 或 */%(取余数)+ -关系运算符 = 或 != 或 # = =逻辑运算符()NOT或!(非)AND(和)OR (或)日期和时间运算符+- 注意: 日期型: 天数 时间型: 秒数字符运算符:+- $两个特殊的运算符圆点操作符(.):用于分隔对象的名称以及分隔对象中的属性、事件、方法。范围转变操作符(:):提供了从一个子类中调用一个父类的方法。说明:逻辑操作符优先级:NOT AND OR3. 表达式即:变量、运算符、常量、函数、字段名、控制以及属性的组合,求值结果为单个值。 算术表达式:由算术操作符和数值型数据构成的表达式,结果为数值型。例 ?15%4+1 &结果为4 字符表达式:由字符操作符和字符型数据构成的表达式结果为字符型。注意:“+”,“-”,“$” 日期表达式:由日期操作符和日期、时间型数据构成的表达式。 注意:1 Dexpression Expression 结果为日期型2 Dexpression-Dexpression 结果为数值型 逻辑表达式:由逻辑操作符和逻辑型数据构成的表达式,结果为逻辑型。ABA.AND.BA.OR.B.NOT.A.F.F.F.F.T.F.T.F.T.T.T.F.F.T.F.T.T.T.T.F. 关系表达式:用于对同类型的数据的比较,其运算结果为逻辑型例:?2001/01/122001/02/15 &结果为.F. ? 52 &结果为.T. ? “abc”bcd” &结果为.F.(1) 设置字符的排序顺序set collate to &设置字符的排序顺序l machine:按照机内码顺序排序空格 大写字母小写字母一级汉字二级汉字l pinyin:(默认)汉字按拼音排序,对于西文字符大小关系空格 小写字母大写字母l stroke:按汉字书写笔画的多少排序,对于西文字符大小关系空格 小写字母大写字母(2) 字符串精确比较=/= 使用“=”进行精确比较会受到SET EXACT ON/OFF的影响:1 . set exact off(默认):如果右边比左边长,则为假,如果右边比左边短,则从左边取与右边等长的字符串与右边进行比较。Set exact off?”bcde”=”bc”, ”bc”=”bcde”, ”bc ”=”bc”? ”bc”=”bc ”, ”bcde”=”bcde”2. set exact on:通过在字符后加空格的方法使两个字符串的长度相等,然后进行比较。Set exact on?”bcde”=”bc”, ”bc”=”bcde”, ”bc ”=”bc”? ”bc”=”bc ”, ”bcde”=”bcde” 名称表达式:由圆括号括起来的一个字符表达式,用来替换命令或函数中的名称。例: DBF=xs USE (DBF) &相当于 USE XS 宏替换:用宏替换符号 & 表示,并用一个点符号(.)来结束这个宏替换表达式,它与名称表达式具有相似的作用。例: 已知 A=1, B=2, C12=GOOD 则 C&A&B= 2.4 空值处理1.NULL值具有特点:u 等价于没有任何值u 与0,空字符串,空格不同u 排序优先于其他数据2 .NULL作为值使用: 不同于空字符串,空白字段或0 EMPTY():判空函数 ISBLANK():判空格函数 ISNULL():判空值函数 “”0空白字段.NULL.EMPTY().T.T.T.F.ISBLANK().T.F.T.F.ISNULL().F.F.F.T.3. NULL在逻辑表达式中的行为逻辑表达式表达式的结果X=.T.X=.F.X=.NULL.X AND .NULL.NULL.F.NULL.X OR .NULL.T.NULL.NULL. NOT X.F.T.NULL.历年考试试题示例: 1在 Visual FoxPro 系统中,下列命名中不能作为变量名的是 _ 。 姓名 2004姓名 姓名2004 _2004学生 2在 Visual FoxPro 系统中,下列表示中不属于常量的是 _ 。 .T. T T T 3函数 INT(-3.14) 的返回值是 _ 。 -4 -3 3 4 4执行下列命令后,屏幕上显示的结果是 _ 。 X=ARE YOU Ok? Y=are ?AT(Y,X) 1 .F. .T. 0 5. 以下表达式中不能返回字符串值“FoxPro”的是_。A “Fox” + “Pro”B TRIM(“Fox ” “Pro”)C ALLTRIM (“Fox” + “Pro”)D “Fox ” - “Pro ”6. 在系统 Visual FoxPro 中,以下函数返回值不是数值型的是_。A. LEN(“Visual FoxPro”)B. AT(“This”, “ThisForm”)C. YEAR(DATE()D. LEFT(“ThisForm”, 4)7在Visual FoxPro系统中,表达式LEN(DTOC(DATE(),1)的值为 。A.4 B. 6 C. 8 D.108. 在Visual FoxPro 系统中,逻辑运算符执行的优先顺序是 A.NOT,AND,OR B.NOT,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论