6.4.1 过程与过程文件
过程也叫子程序,是一个相对独立的程序段 , 可以被其他程序调用。调用子程序的程序称为主程序。
1. 过程的建立与调用
( 1 )过程的建立:一个过程就是一个具有特定功能的命令文件( .PRG ),它的建立、运行与一般程序相同。但是,一个过程中至少要有一条 RETURN 返回语句。
( 2 )过程的调用:在上级程序中设置一条 DO 命令即可调用一个过程。
命令: DO < 过程名 > [IN < 文件名 >] [WITH < 参数表 >]
 
过程调用示意图
2 .过程文件 将多个过程存放在一个文件中形成过程文件。过程文件中的过程不能作为一个命令文件单独存盘或独立运行。
( 1 )过程文件的建立
命令: MODIFY COMMAND < 过程文件名 >
过程文件的基本结构:
PROCEDURE < 过程名 >
< 命令序列 >
[RETURN [TO MASTER]]
ENDPROC
( 2 )过程文件的打开与关闭
命令: SET PROCEDURE TO < 过程文件 >
3 .带参数的过程调用 将不同的参数分别传递给同一过程,执行同一功能的操作后返回不同的结果,可以大大提高程序模块的灵活性。
( 1 )定义带参数的过程:
PROCEDURE < 过程名 >
PARAMETERS < 参数表 >
< 命令序列 >
RETURN
ENDPROC
( 2 )调用带参数的过程:
命令: DO < 过程名 > WITH < 参数表 >
6.4.2 自定义函数
自定义函数的建立和使用方法与过程相同。函数除了完成某种特定操作外,还返回一个值。
1. 定义函数
FUNCTION < 函数名 > ( [< 参数表 >] )
< 命令序列 >
[RETURN < 表达式 >]
ENDFUNC
2. 调用函数
格式: < 函数名 >(< 参数表 >)
6.4.3 变量的作用域
1 .全局变量 使用 PUBLIC 关键字定义的变量(也称公共变量),可以是全局内存变量或数组。
格式: PUBLIC < 内存变量表 > | [ 数组 ]
2 .局部变量 使用 LOCAL 关键字定义的变量。
格式: LOCAL < 内存变量表 > | [ 数组 ]
3 .私有变量 没有通过 PUBLIC 或 LOCAL 关键字定义而在程序中直接使用(即由系统自动隐含建立)的变量。
私有变量在建立它的程序及其下属的子程序中有效,一旦建立它的程序运行结束,这些私有变量就自动清除。
当子程序中的变量与上级程序中的变量同名时,可以在当前子程序中使用 PRIVATE 关键字对该同名变量进行隐藏说明,使其在当前子程序中暂时无效。
格式: PRIVATE < 内存变量表 >
|