跳到主要内容

15.3 函数

使用函数功能可以简化代码结构,提高代码可读性和复用率。用户可以将需要经常执行的程序段定义成新的函数,这样在主程序中就可以方便的随时调用。

15.3.1 函数定义

15.3.1.1 PROC

PROC 表示无返回值的函数,其定义方式为:

SCOPE PROC RoutineName()
 ...
 ...
 // do something
 ...
 ...
ENDPROC

其中:
1. SCOPE 为函数作用域,支持 GLOBALLOCAL 两种;
2. PROC 是无返回值函数的定义关键字;
3. RoutineName 为函数名称,命名规则与变量命名规则相同,详见变量命名规则。
辅助编程,可以通过以下方式插入PROC:
15.3.1.1

15.3.1.2 FUNC

FUNC 为有返回值的函数,其定义方式为:

SCOPE FUNC RET RoutineName()
 ...
 ...
 // do something
 ...
 ...
ENDFUNC

其中:
1. SCOPE 为函数作用域,支持 GLOBALLOCAL 两种;
2. FUNC 是有返回值函数的定义关键字;
3. RET 是返回值类型;
4. RoutineName 为函数名称,命名规则与变量命名规则相同,详见变量命名规则。
辅助编程,可以通过以下方式插入FUC:
15.3.1.1

15.3.1.3 TRAP

TRAP 为无返回值的中断函数,其定义方式为:

TRAP TrapName()
 ...
 ...
 // do something
 ...
 ...
ENDTRAP

其中:
1. TRAP 是无返回值中断函数的定义关键字;
2. TrapName 为函数名称,命名规则与变量命名规则相同,详见变量命名规则。
辅助编程,可以通过以下方式插入TRAP:
15.3.1.3

15.3.2 函数调用

调用函数时,直接在程序编辑器输入函数名即可,例如:

RoutineName()

注意:

  • 仅能调用本工程内的其它 GLOBAL 级别的函数或本模块文件中 LOCAL 级别的函数,不支持递归调用,不支持两个子函数之间相互交叉调用。

  • 对于函数的调用在编译器中被视为一条独立的程序指令。

  • 不允许在函数中定义函数。