第2章VFP表达式及应用(6)

2019-05-24 16:19

2.11 内存变量管理

VFP提供了一批内存变量专用命令,除了内存变量赋值(定义)和清除(释放)命令外,还有内存变量信息查看、保存和恢复等命令。

2.11.1 查看内存变量

实际应用中,有时需要查看目前内存中的变量情况,可以用下列命令查看内存变量: 命令格式1:List Memory [Like<变量名通配符>] [To Printer][To File<文件名>] 命令格式2:Display Memory [Like<变量名通配符>]

[To Printer][To File<文件名>]

命令说明:输出内存变量的有关信息,包括变量名、作用域、数据类型和变量值。当显示的内容较多时,Display每显示一屏后暂停,按任意键后继续输出下一屏;list无暂停。List和Display的功能基本一致,各选项说明如下:

(1)Like <变量名通配符>:只输出与“变量名通配符”匹配的变量和数组。通配符的作用同Release命令中的通配符。省略此选项,则输出所有内存变量。

(2)To Printer:在VFP主窗口显示的同时,将查看的结果送打印机打印。 (3)To File <文件名>:输出结果保存到文本文件中,文件扩展名是TXT。 【 例 2.85 】依次执行下列命令,执行结果如图2.2。

Clear Memory X=”张明” X1={^1990/12/01} X12=.F.

Dimension XS(2,2) XS(1)=”2003010” XS(4)={^1990/12/01} Y=$1234.56

Display Memory Like X* && 显示X, X1、X12和XS数组的各元素 变量名 作用域 数据类型 变量值 表示数组 图2.2 内存变量信息

2.11.2 保存内存变量

为了以后重启VFP后能使用当前定义的内存变量,可以将当前内存变量的信息保存到磁盘文件中。

命令格式:Save To <文件名> [All Like | All Except <变量名通配符>]

命令说明:将当前有效的内存变量信息保存到指定的内存变量文件中,系统默认文件扩展名为MEM。若省略所有选择项,则保存当前有效的全部内存变量。

【 例 2.86 】

Clear Memory X1=1 X2=2 Y1=3 Y2=4

Save To MA && 将当前所有的内存变量保存到文件MA.MEM 中 Save To MB All Like X* && 将所有以X开头的内存变量保存到文件MB.MEM中 Save To MC All Except X* && 将所有非X开头的内存变量保存到文件MC.MEM中

2.11.3 恢复内存变量

可以恢复内存变量文件中的变量,即:再次读到内存中,以便重新引用。 命令格式:Restore From <文件名> [Additive]

命令说明:将内存变量从指定的文件读到内存中。若不选Additive,则用文件中的变量覆盖当前内存中的全部变量;若选Additive,则恢复文件中变量的同时保留当前的内存变量,若当前内存与文件中的变量同名,则取文件中变量的值。

【 例 2.87 】

Clear Memory X1=10

Restore From MA Additive

? X2,Y1,Y2 && 输出结果为:2 3 4 ? X1 && X1是文件中X1的值1 Y1=30

Restore From MC

? Y1 && Y1是文件中Y1的值3 ? Y2 && Y2是文件中Y2的值4

习 题 二

一、 用适当内容填空

1.VFP中的变量分为:【 】和字段变量。 2.VFP中的内存变量分为:【 ① 】和【 ② 】。 3. VFP中,内存变量名由【 ① 】 、汉字、数字和下划线组成,且不能以 【 ② 】 开头。

4.内存变量保存在【 ① 】中,变量的数据类型由【 ② 】时表达式的数据类型决定。退出VFP时,内存变量将被【 ③ 】。

5. 若当前有一个字段变量和内存变量“XM”同名,则直接引用“XM”是指【 】变量。

24

6. 对应数学式10÷(2X+6X-3)+e的VFP表达式为【 】。 7. 函数Len(‘学习”VFP6.0”’)的值是【 】。

8.Left(“123456”,Len(“程序”))的计算结果是【 】。 9. Str(1234.5678,7,3)的结果是【 】。

10. 表达式\的值是【 】。

11.VFP规定只有【 】数据类型的数据(除日期和数值型外)才能进行运算。 12. 与数学式“X≤Y

14.VFP中Not、Aad和Or运算符的优先级从高到低依次为【 ① 】、【 ② 】、【 ③ 】。

15.在关系、逻辑和数值运算中,运算级由高到低依次是:【 ① 】、【 ② 】、【 ③ 】。

16. 表达式1-8>7.Or.\的运算结果为【 】。 17.命令 ? Vartype(Time( )) 的输出结果是【 】。

18. 设X=’2008/10/01’。函数Vartype(&X)的值是【 ① 】;函数Vartype(“&X”)的值是【 ② 】;Type(“&X”)的值是【 ③ 】。

19. 若a=5,b=\,则:?Type(b)的输出结果是【 ① 】,?Vartype(b)的输出结果为【 ② 】,?Vartype(&b)的输出结果为【 ③ 】。

20. 执行命令 Dime array(3,3) 后,array(3,3)的值为【 】。 21. 使用【 】命令,可以把以X开头的所有内存变量都存入磁盘文件A.MEM中。

二、 从参考答案中选择一个最佳答案

1. 下面常数中正确的是【 】。 A. 3.4E2.5 B. 张明 C. .T. D. 2004/01/12

2. 以下日期中,正确的是【 】。

A. {\C. {^2001-05-25} D. {[^2001-05-25]} 3.下列变量名中不正确的是【 】。

A. 学号 B. 1季度 C. No_1 D. _12 4. 当前数据表中含有Name字段,系统中有一内存变量名称也为Name,执行命令?Name后,【 】。

A. 显示的结果是内存变量Name的值 B. 显示的结果是字段变量Name的值

C. 随机显示,或是内存变量、或是字段变量Name的值 D. 显示出错信息

5. 执行命令 Store 1 To A,B,C,D 的结果是【 】。

A. 使A、B、C、D四个变量值都为1 B. 仅A值为1,其他变量值为0 C. 仅A值为1,其他变量值为.F. D. 仅A值为.F.,其他变量值为1 6. 以下赋值命令正确的是【 】。

A. Store 1 To X,Y B. Store 1,2 To X,Y C. X=1,Y=2 D. X,Y=1 7. 下列各项,除【 】外均是常数。

A. XY B. 'XY' C. .T. D. 1998 8. 下列选项中,不是常数的是【 】。

A. 李伟 B. [abc] C. 1.4E+2 D. {^1999/21/31} 9.【 】是逻辑型常数。

A.“Y” B. “N” C. “NOT” D. .F. 10. 2E-4是一个【 】。

A. 字符变量 B. 内存变量 C. 数值常数 D. 非法表达式 11. 不属于字符常数定界符的是【 】。

A. 半角单引号 B. 大括号 C. 双引号 D. 方括号 12. 下列字符型常数的表示中,错误的是【 】。

A. ’1+2’ B. [[吉林]] C. [\日报\13. 表达式12-7%3*3的值是【 】。

A.6 B. 9 C. 15 D. 18 14.下面表达式的值为数值型数据的是【 】。

A.2*3=6 B. Ctod(’11/03/99’)+1 C. [10]-[2] D. Len(’ABC’)

15. 表达式Len('CHINESE')+Val('86')+({^1998/04/05}-{^1998/04/03})的值是【 】数据。

A. 字符型 B. 日期型 C. 数值型 D. 逻辑型 16.函数Round(1234.567,-2)的返回值为【 】。 A. 1200 B. 1234.57 C. 1234.00 D. 1234

17. 设变量P=3.1415926,执行命令 ? Round (P,4) 后的输出结果为【 】。 A. 3.1410 B. 3.1415 C. 3.1416 D. 3.0000 18. 以下可以输出“程序”的命令是【 】。

A. ? Substr(\程序设计基础\程序设计基础\C.? Substr(\程序设计基础\? Substr(\程序设计基础\19. 设S=\,表达式Upper(Subs(S,1,1))+Lower(Subs(S,2))的值是【 】

A.visual foxpro B. Visual foxpro C. VISUAL FOXPRO D. VFP 20. 在下列函数中,函数值为数值型数据的是【 】。

A. Substr(Dtoc(Date( )),7) B. Ctod(\C. Time( ) D. At(\群众\人民群众\21. 下列表达式值的类型为字符型的是【 】。

A. \C. \ D. Dtoc(Date( ))> \22. 函数 Chrtran('ABAC','A','XY') 的值是【 】。 A. ABAC B. XYBXYC C. XBXC D. BC

23. 在下面的VFP表达式中,不正确的是【 】。

A. {^2008-10-01}-Date( ) B. {^2008-10-01}+Date( )

C. {^2008-10-01}+10 D. {^2008-10-01 10:10:10 AM}-10 24. 运算符 = = 的作用为【 】。

A. 任何时候都等价于运算符 = B. 不是VFP的运算符 C. 字符串精确比较 D. 用于精确比较两个数值数据 25. 执行Set Exact Off命令后,执行 ?“上海市”=“上海” 命令。其结果为【 A. .T. B. .F. C. 0 D. 1

26. 设x=1,y=2, z=3,则表达式x+y=z的值是【 】。 A. x+y B. 3 C. .T. D. U 27.【 】的运算结果一定是逻辑值。

A. 字符表达式 B. 数值表达式 C. 关系表达式 D. 日期表达式 28. 与 !(y<=0.Or.y>=1) 等价的条件是【 】。

A. y>0.Or.y<1 B. y<0.Or.y>1 C. y<0.And.y>1 D. y>0.And.y<1 29. 设X=\,Y=2*3,下列正确的表达式是:【 】。

A.Sqrt(X) B. Y<4 .Or.X>’XH’ C. Subs(Y,1,1) D. X+10 30. \是小于10的非负数\,在VFP中用表达式表示成【 】。

A. 0<=X<10 B. 0<=X<10 C. 0<=X And X<10 D. 0<=X Or X<10 31. 下列叙述中,不正确的是【 】。

A. 数值运算符的优先级高于其他类型的运算符 B. 字符运算符“+”和“-”优先级相等

。 】


第2章VFP表达式及应用(6).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:Hypermesh总结-几何清理篇

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: