收藏 分销(赏)

第章VisualFoxPro编程基础.ppt

上传人:w****g 文档编号:1885676 上传时间:2024-05-11 格式:PPT 页数:42 大小:748KB
下载 相关 举报
第章VisualFoxPro编程基础.ppt_第1页
第1页 / 共42页
第章VisualFoxPro编程基础.ppt_第2页
第2页 / 共42页
第章VisualFoxPro编程基础.ppt_第3页
第3页 / 共42页
第章VisualFoxPro编程基础.ppt_第4页
第4页 / 共42页
第章VisualFoxPro编程基础.ppt_第5页
第5页 / 共42页
点击查看更多>>
资源描述

1、5/9/20241第第 2 章章Visual FoxPro 编程基础编程基础 5/9/20242 数据描述和数据类型数据描述和数据类型 函数函数 运算符和表达式运算符和表达式 Visual FoxPro命令的一般格式命令的一般格式 程序的基本结构程序的基本结构 【教学主要内容教学主要内容】5/9/20243 【教学要求教学要求】了解:了解:数据描述的基本方法数据描述的基本方法 掌握:掌握:数据类型的定义数据类型的定义 函数的定义和使用函数的定义和使用 运算符和表达式运算符和表达式 Visual FoxPro命令的一般格式命令的一般格式 结构化程序设计结构化程序设计 5/9/202442.1 数

2、据描述和数据类型数据描述和数据类型 Visual FoxPro 8.0 Visual FoxPro 8.0可以对数据进行分类,分别存可以对数据进行分类,分别存储每一类型的数据,同时也可以将不同数据之间的联系储每一类型的数据,同时也可以将不同数据之间的联系存储进来,以获得综合性数据信息。存储进来,以获得综合性数据信息。Visual Visual FoxProFoxPro中中常常量量、变变量量、函函数数及及表表达达式式的的常常用用数数据据类类型型有有字字符符型型、数数值值型型、逻逻辑辑型型、日日期期型型、日日期期时间型、货币型和变体型等。时间型、货币型和变体型等。操操作作过过程程中中一一般般只只对

3、对相相同同类类型型的的数数据据进进行行运运算算,在在操作过程中必须时刻注意操作对象的类型。操作过程中必须时刻注意操作对象的类型。5/9/202452.1 数据描述和数据类型数据描述和数据类型 2.1.1 2.1.1 常量常量 在在Visual Visual FoxProFoxPro程程序序中中,操操作作过过程程中中其其值值不不发发生生变变化化的的数数据据项项称称为为常常量,由常量名和常量值组成。量,由常量名和常量值组成。常量有以下几种数据类型:常量有以下几种数据类型:1.1.字符型字符型(Character)(Character)字字符符型型数数据据通通常常用用来来表表示示文文本本类类型型的的

4、信信息息,每每个个字字符符占占用用一一个个字字节节,最最多可有多可有254254个字符。由中个字符。由中/英文字符、数字、空格和各种专用符号组成。英文字符、数字、空格和各种专用符号组成。2.2.数值型数值型(Numeric)(Numeric)数数值值型型数数据据是是用用来来进进行行数数学学运运算算的的整整数数或或分分数数,由由数数字字、小小数数点点和和正正负负号等组成,在内存中占号等组成,在内存中占8 8个字节。例如个字节。例如135135、10.4710.47、-101-101、和、和2.17E62.17E6等。等。3.3.逻辑型逻辑型(Logic)(Logic)逻逻辑辑型型数数据据只只有有

5、“真真”和和“假假”两两个个值值,分分别别用用.T.T.、.t.t.、.Y.Y.、.y.y.(逻逻辑辑值值真真)和和.F.F.、.f.f.、.N.N.、.n.n.(逻逻辑辑值值假假),表表示示逻逻辑辑运运算算的的结结果。果。5/9/202462.1 数据描述和数据类型数据描述和数据类型 4.4.日期型日期型(Date)(Date)和日期时间型和日期时间型(DateTime)(DateTime)日日期期型型数数据据常常用用大大括括号号作作为为定定界界符符。通通常常以以“月月/日日/年年”的的形形式来表示,如式来表示,如02/01/0602/01/06,占,占8 8个字节。个字节。系系统统默默认认

6、的的“严严格格日日期期型型格格式式”以以yyyy-mm-ddyyyy-mm-dd的的形形式式来来表表示示,格格式式中中的的符符号号 指指该该日日期期是是严严格格的的,表表达达一一个个确确切切的的日日期期,它它不不受受日日期期设设置置命命令令SET SET DATE DATE TOTO和和SET SET CENTURY CENTURY ON/OFFON/OFF的的影影响响。格格式式中中的的“-”“-”可可用用“/”“/”来代替。来代替。5.5.货币型货币型(Currency)(Currency)数数字字前前加加前前置置符符号号$表表示示货货币币型型数数据据。如如$121.67$121.67。货货

7、币币型型数数据据不不用用科科学学记记数数法法表表示示,最最多多有有四四位位小小数数,超超过过4 4位位则则Visual Visual FoxProFoxPro自自动动调调整整为为4 4位。货币型数据在内存中占位。货币型数据在内存中占8 8个字节。个字节。5/9/202472.1 数据描述和数据类型数据描述和数据类型 2.1.2 2.1.2 变量变量 在在命命令令操操作作和和程程序序运运行行中中其其值值可可以以发发生生变变化化的的数数据据是是变变量量。在在Visual Visual FoxProFoxPro中,变量不需要严格的定义,它通过赋给变量的值来识别变量的类型。中,变量不需要严格的定义,它

8、通过赋给变量的值来识别变量的类型。Visual FoxPro Visual FoxPro中有两类变量:一是字段变量,另一类是内存变量。中有两类变量:一是字段变量,另一类是内存变量。1.1.字段变量字段变量 字段变量是指数据库表文件中定义好的每一字段,在数据表中的记录都字段变量是指数据库表文件中定义好的每一字段,在数据表中的记录都是字段变量相应的值。是字段变量相应的值。(1 1)备注型(备注型(MemoMemo)在表中使用,大小为)在表中使用,大小为4 4字节。字节。(2 2)浮点型()浮点型(FloatFloat)与数值型一样,数据为整数或小数,在内存中占)与数值型一样,数据为整数或小数,在内

9、存中占8 8个字节,在表中占个字节,在表中占2020个字节。个字节。(3 3)双精度型()双精度型(DoubleDouble)双精度浮点数大小占)双精度浮点数大小占8 8个字节。个字节。(4 4)通用型()通用型(GeneralGeneral)通用型数据用于存储)通用型数据用于存储OLE OLE 对象的数据,在表中对象的数据,在表中占占 4 4 个字节。个字节。5/9/202482.1 数据描述和数据类型数据描述和数据类型 (5 5)整型(自动增长)()整型(自动增长)(IntegerInteger(AutoIncrementingAutoIncrementing)可以为数据)可以为数据库容器

10、表库容器表(DBC)(DBC)或自由表指定自动增长字段值,在表中占个字节。或自由表指定自动增长字段值,在表中占个字节。字段值的自动增长量由字段值的自动增长量由Next ValueNext Value和和StepStep的值控制。当打开一个字段的的值控制。当打开一个字段的自动增量时,自动增量时,初始的增量值、初始的增量值、Next Value Next Value 和和 Step Step是保存在表头中的特定是保存在表头中的特定字段的字段子记录的未使用的保留部分。字段的字段子记录的未使用的保留部分。(6 6)整整型型(IntegerInteger)整整数数字字段段类类型型在在表表中中以以二二进进

11、制制存存储储,且且只只占占用用 4 4 个个字字节节的的空空间间,所所以以,整整数数字字段段类类型型比比其其他他任任意意类类型型所所需需的的内内存存都都少少,而而且且二进制值不需要作二进制值不需要作 ASCII ASCII 转换。转换。(7 7)字符型)字符型(二进制二进制)(CharacterBinaryCharacterBinary)(8 8)备注型)备注型(二进制二进制)(MemoBinaryMemoBinary)(9 9)变变体体型型(VariantVariant)变变体体型型可可以以包包含含除除固固定定长长度度串串以以外外的的任任意意 Visual Visual FoxPro Fox

12、Pro 数数据据类类型型,也也可可是是特特殊殊值值 EmptyEmpty,Error Error 和和 NULLNULL。一一旦旦一一个个值值保保存存在在变变体体中中,变变体体型型的的数数据据类类型型就就是是它它所所包包含含的的值值的的数数据据类类型型,大大小小与相应的类型一致。与相应的类型一致。5/9/202492.1 数据描述和数据类型数据描述和数据类型 2.2.内存变量内存变量 内存变量是内存中的一个存储单元,独立于数据表文件。内存变量是独内存变量是内存中的一个存储单元,独立于数据表文件。内存变量是独立于数据表文件而存在的变量,用来存储数据处理过程中所需要的常数、中立于数据表文件而存在的

13、变量,用来存储数据处理过程中所需要的常数、中间结果和最终结果。间结果和最终结果。(1)(1)内内存存变变量量的的赋赋值值 内内存存变变量量是是由由赋赋值值语语句句定定义义的的,给给内内存存变变量量赋赋值值的的常常用用命命令令有有“=”“=”、STORESTORE、INPUTINPUT、WAITWAIT、ACCEPTACCEPT等等。内内存存变变量量的的数数据据类类型型取取决决于于赋赋值值数数据据的的类类型型,共共分分为为六六种种类类型型:即即字字符符型型(C)(C)、数数值值型型(N)(N)、逻逻辑型辑型(L)(L)、日期型、日期型(D)(D)、日期时间型、日期时间型(T)(T)和货币型和货币

14、型(Y)(Y)。格式格式1 1:=功能:定义单个内存变量功能:定义单个内存变量 示例:在命令窗口输入以下命令:示例:在命令窗口输入以下命令:a=”a=”你好你好”b=12.34 b=12.34 格式格式2 2:STORE STORE TO TO 功能:将表达式的值赋给多个内存变量功能:将表达式的值赋给多个内存变量 示例:示例:store 5*6 to a,b,c store 5*6 to a,b,c 5/9/2024102.1 数据描述和数据类型数据描述和数据类型 (2)(2)内存变量的显示内存变量的显示 可以通过命令来显示目前已定义过的内存变量。可以通过命令来显示目前已定义过的内存变量。格式

15、格式1 1:LIST/DISPLAY MEMORYLIKE LIST/DISPLAY MEMORYLIKE TO PRINTERPROMPT/TO FILE TO PRINTERPROMPT/TO FILE 功功能能:LISTLIST命命令令在在屏屏幕幕上上一一次次显显示示所所有有变变量量;DISPLAYDISPLAY命命令令则则分分屏屏显显示示数数据据,按按任任一一键键显显示示下下一一屏屏;如如果果语语句句中中包包含含TO TO PRINTPRINT选选项项,则则将将结结果果输输出出到到打印机上。打印机上。(3)(3)内存变量的清除内存变量的清除 可用可用RELEASERELEASE命令清除

16、内存变量数据,语法格式如下:命令清除内存变量数据,语法格式如下:格式:格式:RELEASEALL LIKE/EXCEPTRELEASEALL LIKE/EXCEPT 功功能能:如如果果语语句句中中包包含含 ,则则仅仅清清除除清清单单中中指指定定的的内内存存变变量量;如果语句中包含如果语句中包含ALL LIKE|EXCEPTALL LIKE|EXCEPT,则按如下条件清除内存变量:,则按如下条件清除内存变量:ALL LIKE ALL LIKE:表示把符合结构中所指定条件的所有内存变量清除。:表示把符合结构中所指定条件的所有内存变量清除。ALL ALL EXCEPTEXCEPT:表表示示把把符符合

17、合结结构构中中所所指指定定条条件件以以外外的的所所有有内内存存变变量清除。量清除。5/9/2024112.1 数据描述和数据类型数据描述和数据类型 3.3.数组变量数组变量 数组是由一系列被称为元素的有序数据值构成,可以用序号引用这些元数组是由一系列被称为元素的有序数据值构成,可以用序号引用这些元素,具有相同名称而下标不同。素,具有相同名称而下标不同。(1)(1)数组的定义数组的定义 格式:格式:DECLARE/DIMENSION/PUBLIC DECLARE/DIMENSION/PUBLIC1(,下标下标22)2(,2)功能:定义一维或二维数组。数组的下标从功能:定义一维或二维数组。数组的下

18、标从1 1开始。开始。(2 2)数组的使用)数组的使用 数组定义后,数组中每个元素就可以像内存变量一样使用。系统设定各数组定义后,数组中每个元素就可以像内存变量一样使用。系统设定各数组元素的初始值为数组元素的初始值为.F.F.,在执行赋值命令时,系统可以为各元素设定相应,在执行赋值命令时,系统可以为各元素设定相应的类型,同一数组的不同元素,数据类型可以不一致。的类型,同一数组的不同元素,数据类型可以不一致。5/9/2024122.1 数据描述和数据类型数据描述和数据类型 数数组组元元素素的的赋赋值值方方法法与与内内存存变变量量的的赋赋值值方方法法一一样样,常常用用STORESTORE命命令令赋

19、初值。赋初值。格式:格式:STORE STORE TO TO =功能:给数组中每个元素赋以相同的值。功能:给数组中每个元素赋以相同的值。用用SCATTERSCATTER把字段变量的值赋给数组,把字段变量的值赋给数组,格式:格式:SCATTERFIELDS SCATTERFIELDSTOTO 功功能能:将将当当前前数数据据库库表表文文件件的的当当前前记记录录特特定定字字段段变变量量的的值值赋赋给给一一组组变变量量或数组中。数组变量的类型与字段的类型一致。或数组中。数组变量的类型与字段的类型一致。5/9/2024132.1 数据描述和数据类型数据描述和数据类型 用用COPY TO ARRAYCOP

20、Y TO ARRAY将当前选定表中的数据赋给数组。将当前选定表中的数据赋给数组。格式:格式:COPY TO ARRAY COPY TO ARRAY 功能:指定数组名,将当前选定表中的数据复制到该数组中。功能:指定数组名,将当前选定表中的数据复制到该数组中。用用GATHERGATHER命令来替换字段变量命令来替换字段变量 格式:格式:GATHER FROMGATHER FROMFIELDSFIELDS LIKE|EXCEPT LIKE|EXCEPTMEMOMEMO 说说明明:用用数数组组元元素素的的值值顺顺序序替替换换当当前前数数据据库库表表文文件件的的当当前前记记录录各各字字段段的的值。值。5

21、/9/2024142.1 数据描述和数据类型数据描述和数据类型 4.4.系统变量系统变量 系系统统变变量量是是由由Visual Visual FoxProFoxPro系系统统内内部部提提供供的的。该该系系统统提提供供的的系系统统变变量量很多,部分变量如表很多,部分变量如表2.12.1所示:所示:表表 2.1 2.1 系统变量的类型及应用说明系统变量的类型及应用说明系系 统统 变变 量量 变变 量量 说说 明明_SCREEN _SCREEN 指定指定 Visual FoxPro Windows Visual FoxPro Windows 主窗口的属性主窗口的属性_VFP _VFP 指向当前运行的

22、指向当前运行的 Visual FoxPro Visual FoxPro 应用程序对象应用程序对象_PAGETOTAL _PAGETOTAL 在报表中设置在报表中设置 共共 Y Y 页第页第 X X 页页 页数页数_TEXT _TEXT 可以把文本合并命令的结果输出到低级文件中可以把文本合并命令的结果输出到低级文件中_DIARYDATE _DIARYDATE 默认存储当前日期默认存储当前日期_SHELL Visual FoxPro _SHELL Visual FoxPro 在执行程序时在执行程序时 ,阻止访问命令窗口,阻止访问命令窗口5/9/2024152.1 数据描述和数据类型数据描述和数据类

23、型2.1.3 2.1.3 变量作用域变量作用域 变变量量只只有有在在运运行行应应用用程程序序时时才才会会存存在在。所所谓谓变变量量的的作作用用域域即即某某个个变变量量在在应用程序中的有效作用区间。应用程序中的有效作用区间。1.1.局部变量局部变量 格式:格式:LOCALLOCAL 功能:建立局部变量。功能:建立局部变量。2.2.私有变量私有变量 格式:格式:PRIVATE PRIVATE 功功能能:PRIVATE PRIVATE 并并不不创创建建变变量量,它它只只在在当当前前程程序序中中隐隐藏藏变变量量,这这些些变变量量是在高层程序中声明的。是在高层程序中声明的。3.3.全局变量全局变量 格式

24、:格式:PUBLICPUBLIC 功能:指定一个或多个要初始化为或指定为全局变量的内存变量。功能:指定一个或多个要初始化为或指定为全局变量的内存变量。5/9/2024162.2 函函 数数 函函数数是是预预先先编编制制的的程程序序模模块块,可可以以实实现现某某项项功功能能或或完完成成某某种种运运算算。Visual FoxProVisual FoxPro的函数有两种:一种是系统的函数,一种是自定义函数。的函数有两种:一种是系统的函数,一种是自定义函数。函数调用的语法格式为:函数调用的语法格式为:函数名(函数名(参数列表参数列表)2.2.12.2.1常用函数的使用常用函数的使用 1.1.字符函数字

25、符函数 (1 1)求子串函数)求子串函数SUBSTRSUBSTR()、()、LEFTLEFT()、()、RIGHTRIGHT()()(2 2)宏代换函数)宏代换函数 (3 3)删除字符串前导空格函数)删除字符串前导空格函数LTRIM()LTRIM()(4 4)删除字符串尾部空格函数)删除字符串尾部空格函数RTRIM()/TRIM()RTRIM()/TRIM()(5 5)删除字符串前后空格函数)删除字符串前后空格函数ALLTRIM()ALLTRIM()(6 6)子串位置检索函数)子串位置检索函数ATAT()()(7 7)字符串替换函数)字符串替换函数STUFF()STUFF()(8 8)产生重复

26、字符函数)产生重复字符函数REPLICATE()REPLICATE()(9 9)求字符出现次数函数)求字符出现次数函数OCCURS()OCCURS()5/9/2024172.2 函函 数数 2.2.日期时间函数日期时间函数 (1 1)时间函数时间函数TIMETIME()()(2 2)日期函数)日期函数DATE()DATE()(3 3)年份函数)年份函数YEARYEAR()()(4 4)月份函数)月份函数MONTH()MONTH()(5 5)日期函数)日期函数DAY()DAY()3.3.数值运算函数数值运算函数 (1 1)取整函数取整函数INTINT()、()、CEILINGCEILING()、

27、()、FLOORFLOOR()()(2 2)取绝对值函数)取绝对值函数ABS()ABS()(3 3)四舍五入函数四舍五入函数ROUND()ROUND()(4 4)求余数函数求余数函数MODMOD()()(5 5)求最大值函数)求最大值函数MAXMAX()()(6 6)求平方根函数)求平方根函数SQRTSQRT()()(7 7)求指数函数)求指数函数EXPEXP()()(8 8)求对数函数)求对数函数LOGLOG()()5/9/2024182.2 函函 数数 4.4.逻辑函数逻辑函数 逻逻辑辑函函数数主主要要用用于于对对表表达达式式进进行行测测试试判判断断,如如果果表表达达式式为为真真时时,则则

28、输输出出结果为结果为.T.T.为假时,输出结果为为假时,输出结果为.F.F.。(1 1)判断表达式是否在上下限之间)判断表达式是否在上下限之间BETWEENBETWEEN()()(2 2)判断表达式是否为空)判断表达式是否为空EMPTY()EMPTY()(3 3)测试表达式类型)测试表达式类型TYPETYPE()()(4 4)快速表达式判断)快速表达式判断IIF()IIF()(5 5)判断表达式是否匹配)判断表达式是否匹配INLISTINLIST()()5.5.类型转换函数类型转换函数 (1 1)大小写转换函数)大小写转换函数 (2 2)数值型转换成字符型函数)数值型转换成字符型函数 (3 3

29、)字符型转换成数值函数)字符型转换成数值函数 (4 4)字符转换成日期型函数)字符转换成日期型函数 (5 5)日期型转换成字符型函数)日期型转换成字符型函数5/9/2024192.2 函函 数数 2.2.2 2.2.2 用户自定义函数用户自定义函数 用户自定义函数是由用户建立、可返回值的代码,包括过程和函数等。用户自定义函数是由用户建立、可返回值的代码,包括过程和函数等。1.1.用户自定义过程用户自定义过程 Visual FoxPro Visual FoxPro中,过程的语法格式是:中,过程的语法格式是:PROCEDURE PROCEDURE LPARAMETERS LPARAMETERS变量

30、变量11,变量,变量22,.COMMAND COMMAND RETURN RETURN 表达式表达式 ENDPROC ENDPROC 2.2.用户自定义函数用户自定义函数 函数的基本语法格式如下:函数的基本语法格式如下:FUNCTION FUNCTION LPARAMETERS LPARAMETERS变量变量11,变量,变量22,.COMMAND COMMAND RETURN RETURN 表达式表达式 ENDFUNC ENDFUNC5/9/2024202.3 运算符和表达式运算符和表达式 2.3.1 2.3.1 算术运算符和表达式算术运算符和表达式 1.1.算术运算符算术运算符 算算术术运运

31、算算符符对对表表达达式式进进行行算算术术运运算算,产产生生数数值值型型、货货币币型型等等结结果果。它它包括以下六种运算符:包括以下六种运算符:+加法运算加法运算 -减法运算减法运算 *乘法运算乘法运算 /除法运算除法运算 *或或 乘方运算乘方运算 ()优先运算符()优先运算符 2.2.运算规则运算规则 表达式的主要运算规则如下:表达式的主要运算规则如下:各运算符运算的优先顺序与一般的算术规则相同。各运算符运算的优先顺序与一般的算术规则相同。先先乘乘除除,后后加加减减,乘乘方方优优先先于于乘乘除除,函函数数优优先先于于乘乘方方,圆圆括括号号的的优优先级别最高。先级别最高。同级运算时,从左至右依次

32、运算。同级运算时,从左至右依次运算。3.3.书写规则书写规则 表达式的主要书写规则如下:表达式的主要书写规则如下:表达式的字符须写在同一水平线上,每个字符占一格;表达式的字符须写在同一水平线上,每个字符占一格;表表达达式式中中涉涉及及的的常常量量表表示示、变变量量命命名名以以及及引引用用的的函函数数要要符符合合Visual Visual FoxProFoxPro的规定,以利于程序的识别;的规定,以利于程序的识别;合理应用各运算符,保证运算顺序的正确性。合理应用各运算符,保证运算顺序的正确性。5/9/2024212.3 运算符和表达式运算符和表达式 2.3.2 2.3.2 字符串运算符和表达式字

33、符串运算符和表达式 字符运算符用来对两个字符型数据进行包含及连接运算。字符运算符用来对两个字符型数据进行包含及连接运算。(1 1)$包包含含运运算算符符。用用于于表表示示两两个个字字符符串串之之间间的的包包含含与与被被包包含含的的关关系。参与运算的数据只能是字符型的,结果是逻辑值。系。参与运算的数据只能是字符型的,结果是逻辑值。格式:格式:$2 功功能能:如如果果 1被被包包含含在在 2中中时时其其结结果果为为真真(.T.T.),否则为假否则为假(.F.)(.F.)。(2 2)+字字符符串串连连接接运运算算符符。该该运运算算符符是是完完全全连连接接运运算算符符,用用于于把把两两个或两个以个或两

34、个以上字符串连接成一个新的字符串。上字符串连接成一个新的字符串。(3 3)压压缩缩空空格格运运算算符符。该该运运算算符符是是不不完完全全连连接接运运算算符符,先先去去掉掉第第一一个个字字符符串串后后部部的的空空格格,再再连连接接两两个个字字符符表表达达式式,并并把把字字符符串串1 1末末尾尾的的空空格格放到新生成字符串的尾部。放到新生成字符串的尾部。5/9/2024222.3 运算符和表达式运算符和表达式 2.3.3 2.3.3 日期和时间运算符及表达式日期和时间运算符及表达式 日日期期和和时时间间表表达达式式是是指指含含有有日日期期型型或或日日期期时时间间型型数数据据的的表表达达式式,返返回

35、回日日期期时时间间型型常常量量。其其运运算算符符只只有有“+”“+”和和“-”“-”两两种种,共共6 6种种语语法法格格式式。格格式式如如下:下:格式格式1 1:+功能:结果是将来的某个日期。功能:结果是将来的某个日期。格式格式2 2:-功能:结果是过去的某个日期。功能:结果是过去的某个日期。格式格式3 3:-2 功能:结果是两个日期之间相差的天数。功能:结果是两个日期之间相差的天数。格式格式4 4:+功能:结果是若干秒后的某个日期时间。功能:结果是若干秒后的某个日期时间。格式格式5 5:-功能:结果是若干秒前的某个日期时间。功能:结果是若干秒前的某个日期时间。格式格式6 6:-2 功能:结果

36、是两个日期之间相差的秒数。功能:结果是两个日期之间相差的秒数。5/9/2024232.3 运算符和表达式运算符和表达式 2.3.4 2.3.4 逻辑运算符和表达式逻辑运算符和表达式 逻逻辑辑运运算算符符对对一一个个或或两两个个逻逻辑辑型型表表达达式式进进行行逻逻辑辑运运算算,返返回回逻逻辑辑型常量。它包括四种运算符:型常量。它包括四种运算符:.AND.AND.逻辑与逻辑与 .OR.OR.逻辑或()逻辑或()括号括号 .NOT.NOT.逻辑非逻辑非 !逻辑非!逻辑非 运算规则:运算规则:括号最优先,其次逻辑非优于逻辑与,逻辑与优于逻辑或;括号最优先,其次逻辑非优于逻辑与,逻辑与优于逻辑或;逻逻辑

37、辑运运算算符符和和算算术术运运算算符符一一样样都都可可以以使使用用括括号号来来改改变变操操作作运运算算的的先后顺序先后顺序 逻逻辑辑表表达达式式实实际际上上是是一一种种判判断断条条件件,条条件件成成立立则则表表达达式式值值为为 .T.T.;条件不成立则表达式值为;条件不成立则表达式值为.F.F.。.NOT.NOT.对运算的逻辑表达式取相反值;对运算的逻辑表达式取相反值;.OR.OR.连连接接的的两两个个逻逻辑辑表表达达式式的的值值只只要要有有一一个个为为.,结结果果就就为为.,只有两个值都为,只有两个值都为.F.F.,结果才为,结果才为.;.AND.AND.则要两个逻辑值同时正时结果才为则要两

38、个逻辑值同时正时结果才为.T.T.,否则为,否则为.F.F.。5/9/2024242.4 VFP命令的一般格式2.4.1 2.4.1 命令的一般格式命令的一般格式 命命令令通通常常由由两两部部分分组组成成:第第一一部部分分是是命命令令动动词词,表表示示应应该该执执行行的的操操作作;第第二二部部分分是是若若干干短短语语,对对操操作作提提供供某某些些限限制制性性的的说说明明。下下面面列列出出Visual Visual FoxProFoxPro操作命令的一般语法格式:操作命令的一般语法格式:命命令令动动词词FORFORWHILEWHILETO TO FILEFILE/TO/TO PRINTER/TO

39、 PRINTER/TO ARRAYARRAY/TO/TOALLLIKE/EXCEPTALLLIKE/EXCEPTININ 命令动词是个英文动词,表示这个命令所要完成的操作。命令动词是个英文动词,表示这个命令所要完成的操作。表示对数据库表文件进行操作的记录范围表示对数据库表文件进行操作的记录范围 表表达达式式可可以以是是一一个个或或多多个个由由逗逗号号分分隔隔开开的的表表达达式式,用用来来表表示示命命令令所所进行操作的结果参数进行操作的结果参数 FORFOR 和和WHILEWHILE 在在FORFOR短短语语和和WHILEWHILE短短语语中中 是是一一个个逻逻辑表达,它的值必须为真辑表达,它的

40、值必须为真(.T.)(.T.)或假或假(.F.)(.F.)5/9/2024252.4 VFP命令的一般格式2.4.2 2.4.2 命令的书写规则命令的书写规则 (1 1)任任何何一一条条命命令令必必须须以以命命令令动动词词开开头头。后后面面的的多多个个短短语语通通常常与与顺顺序序无无关关,但但是是必必须须符符合合命命令令格格式式的的规规定定。一一行行只只能能写写一一条条命命令令,以以回回车车表表示示结结束。束。(2 2)用用空空格格来来分分隔隔每每条条命命令令中中的的各各个个短短语语,如如果果两两个个短短语语之之间间有有其其它它分分界符,则空格可以省略。界符,则空格可以省略。(3 3)一一条条

41、命命令令的的最最大大长长度度是是254254个个字字符符。一一行行写写不不下下时时。用用续续行行符符“;”“;”在行末进行分行,并在下行连续书写。在行末进行分行,并在下行连续书写。(4 4)命令中的英文字母大小写可以混合使用。)命令中的英文字母大小写可以混合使用。(5 5)命令动词和子句中的短语可以用其前四个字母缩写表示。命令动词和子句中的短语可以用其前四个字母缩写表示。(6 6)Microsoft Microsoft Visual Visual FoxPro FoxPro 8.0 8.0 中中的的保保留留字字包包括括函函数数,系系统统内内存存变量,属性,事件,方法,命令,菜单常数和子句。变量

42、,属性,事件,方法,命令,菜单常数和子句。用用户户在在选选择择变变量量名名、字字段段名名和和文文件件名名时时,应应尽尽可可能能不不使使用用系系统统中中的的命命令令动动词词和和命命令令字字,以以免免程程序序在在运运行行中中产产生生语语法法错错误误。不不能能用用操操作作系系统统所所规规定定的的输输出出设设备备名名作作为为文文件件名名,也也不不能能用用A A到到J J之之间间的的单单个个字字母母作作表表名名,以以免免与与工工作作区名称冲突。区名称冲突。5/9/2024262.4 VFP命令的一般格式2.4.3 2.4.3 命令的运行方式命令的运行方式 Visual FoxPro Visual Fox

43、Pro有两种运行方式:命令方式和程序方式。有两种运行方式:命令方式和程序方式。1.1.命令方式命令方式 命令方式即在命令方式即在Visual FoxProVisual FoxPro的命令窗口中键入命令行,按回车键立即的命令窗口中键入命令行,按回车键立即执行,系统的主窗口区马上会显示执行的结果。执行,系统的主窗口区马上会显示执行的结果。命令方式一般都在命令方式一般都在VFPVFP的命令窗口中进行的。的命令窗口中进行的。2.2.程序方式程序方式 程程序序方方式式先先要要通通过过命命令令MODIFY MODIFY COMMAND COMMAND 建建立立特特定定的的命命令令文文件件。建建立立时时逐逐

44、行行键键入入命命令令行行,然然后后存存人人磁磁盘盘,由由用用户户指指定定命命令令文文件件名名,系系统默认的扩展名是统默认的扩展名是PRGPRG,然后由,然后由DODO命令执行。命令执行。格式:格式:DO DO 功功能能:这这种种方方式式调调用用程程序序文文件件,系系统统将将自自动动执执行行这这一一文文件件,将将用用户户繁繁琐琐的介入减到最少。程序执行方式运行效率高,可以重复执行。的介入减到最少。程序执行方式运行效率高,可以重复执行。5/9/2024272.4 VFP命令的一般格式2.4.4 2.4.4 赋值命令赋值命令STORESTORE 在在程程序序中中如如果果要要使使用用变变量量,则则必必

45、须须在在使使用用之之前前为为变变量量设设定定一一个个初初始始值值或或改变它的现行值。赋值语句可以将指定的值赋给内存变量或对象的某个属性。改变它的现行值。赋值语句可以将指定的值赋给内存变量或对象的某个属性。格式:格式:STORE STORE TOTO/功功能能:赋赋值值命命令令STORESTORE的的主主要要是是给给内内存存变变量量赋赋值值,多多个个变变量量名名之之间间通通过过逗号隔开。具体功能如下:逗号隔开。具体功能如下:建立建立内存内存变量,并给内存变量变量,并给内存变量/数组赋初值。数组赋初值。为已建立的内存变量为已建立的内存变量/数组重新赋值。数组重新赋值。STORESTORE会用新值替

46、换旧值。会用新值替换旧值。给一个变量或数组赋值时,可以用给一个变量或数组赋值时,可以用“=”“=”可以代替可以代替STORESTORE命令,简写为:命令,简写为:/对对日日期期型型内内存存变变量量赋赋值值时时,如如果果 是是日日期期型型常常量量,则则必必须须用用花花括括号号“”“”括括起起来来并并在在前前面面加加上上一一个个符符号号()(),如如果果 是是字字符符串串,则必须用转换函数将其换为日期型。则必须用转换函数将其换为日期型。示例示例:today=2005/12/06 today=2005/12/06 today=CTOD(“12/06/2005”)today=CTOD(“12/06/2

47、005”)5/9/2024282.4 VFP命令的一般格式2.4.5 2.4.5 显示命令显示命令 格式:格式:?FUNCTION FUNCTION 参数参数FONTFONT字体名字体名,字体大小,字体大小 功能:在屏幕上显示表达式的内容。功能:在屏幕上显示表达式的内容。参数说明:参数说明:?表表达达式式:用用于于对对表表达达式式进进行行计计算算,然然后后新新起起一一行行显显示示计计算算结结果果,计计算算结结果果显显示示在在 Visual Visual FoxPro FoxPro 主主窗窗口口或或者者活活动动的的用用户户自自定定义义窗窗口的下一行;口的下一行;?表达式:结果显示在表达式:结果显

48、示在 Visual FoxPro Visual FoxPro 主窗口、活动的用户定义窗主窗口、活动的用户定义窗口或者打印机当前行的当前位置上。不换行而接着当前行直接输出。计算并口或者打印机当前行的当前位置上。不换行而接着当前行直接输出。计算并显示变量、表达式和常量的值显示变量、表达式和常量的值 当?命令后面没有任何表达式时,输出一个空行;当?命令后面没有任何表达式时,输出一个空行;该该命令命令后可以跟多行参数,有后可以跟多行参数,有PICTUREPICTURE参数、参数、V V参数、参数、ATAT参数、参数、FONTFONT参参数、数、STYLE STYLE参数参数等。等。5/9/202429

49、2.5 程序的结构化设计程序的结构化设计 2.5.12.5.1命令文件的建立和运行命令文件的建立和运行 1.1.利用命令语句建立程序利用命令语句建立程序 Visual FoxPro 8.0 Visual FoxPro 8.0程序是包含一系列命令语句的文件,在程序是包含一系列命令语句的文件,在Visual Visual FoxPro 8.0FoxPro 8.0中通过命令窗口建立程序的格式如下:中通过命令窗口建立程序的格式如下:格式:格式:MODIFY COMMAND MODIFY COMMAND 2.2.运行程序运行程序 Visual FoxPro 8.0 Visual FoxPro 8.0中运

50、行程序可以采用命令方式。中运行程序可以采用命令方式。格式:格式:DO DO 功能:系统将执行扩展名为功能:系统将执行扩展名为.FXP.FXP或或.PRG.PRG的程序。的程序。3.3.打开程序打开程序 当程序已经建立好后,有时还需要打开程序对某些功能进行调试和修改,当程序已经建立好后,有时还需要打开程序对某些功能进行调试和修改,打开程序的命令方式。打开程序的命令方式。格式:格式:MODIFY COMMANDMODIFY COMMAND 功能:在命令窗口中输入该命令。功能:在命令窗口中输入该命令。5/9/2024302.5 程序的结构化设计程序的结构化设计 2.5.22.5.2顺序结构程序设计顺

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服