第六章:  结构化程序设计

  关闭窗口       

6.4 过程与自定义函数

     6.4.1 过程与过程文件
  
6.4.2 自定义函数
  
6.4.3 变量的作用域
 

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 < 内存变量表 >

 

关闭窗口      
 
版权所有西北师范大学数学与信息科学学院