错误处理( Error Handling)

优质
小牛编辑
134浏览
2023-12-01

与其他编程语言一样,Rexx也能够处理错误处理。

以下是Rexx中出现的各种错误情况。

  • ERROR - 只要发送到操作系统的命令导致ERROR ,就会引发此偶数。

  • FAILURE - 每当发送到操作系统的命令导致失败时,都会引发此故障。

  • HALT - 每当操作依赖于另一个操作时,通常会引发此操作。 例如,如果由于任何原因暂停I/O操作。

  • NOVALUE - 未将值赋给变量时引发此事件。

  • NOTREADY - 由任何未准备接受任何操作的I/O设备引发。

  • SYNTAX - 如果代码中存在任何语法错误,则会引发此事件。

  • LOSTDIGITS - 当算术运算导致操作期间丢失数字时,将引发此事件。

陷阱错误

在signal命令的帮助下捕获错误。 我们来看看语法和示例。

语法 (Syntax)

signal on [Errorcondition]

Where,

  • 错误条件 - 这是上面给出的错误条件。

例子 (Example)

我们来看一个例子吧。

/* Main program */ 
signal on error 
signal on failure 
signal on syntax 
signal on novalue beep(1) 
signal off error 
signal off failure
signal off syntax 
signal off novalue 
exit 0 
error: failure: syntax: novalue: 
say 'An error has occured'

在上面的例子中,我们首先打开错误信号。 然后我们添加一个会导致错误的语句。 然后我们有错误陷阱标签来显示自定义错误消息。

上述程序的输出如下所示。

An error has occurred.

以下程序中显示了错误代码的示例。

/* Main program */ 
signal on error 
signal on failure 
signal on syntax 
signal on novalue beep(1) 
exit 0 
error: failure: syntax: novalue: 
say 'An error has occured' 
say rc 
say signal 

上述程序的输出如下所示。

An error has occured 
40 
6