我有一个关于 COBOL 中 IF 语句中括号使用的问题。
假设我们有:
05 SHIRT-COLOR PIC X(02).
88 BLUE-SHIRT VALUE 'B '.
88 WHITE-SHIRT VALUE 'W '.
我想知道 :
之间是否有区别IF BLUE-SHIRT OR WHITE-SHIRT
和
IF (BLUE-SHIRT OR WHITE-SHIRT)
两个 IF 语句的结果是否相同?
谢谢您的回答:)
事实上,括号没有什么区别,但从语义和语法上理解这里发生的事情也许很重要。
在 COBOL 中,
IF
语句表达式 未 括在括号中。然而,表达式可以使用括号来强制执行特定的计算顺序。所以在这种情况下,它只是一个带有多余括号的表达式。也就是说表达式:
(BLUE-SHIRT OR WHITE-SHIRT)
和
BLUE-SHIRT OR WHITE-SHIRT
在语义上是相同的,并且
IF
是不相关的。