嵌套条件语句中的点规则 - COBOL

bla*_*qua 1 cobol nested-if placement

我想知道是否有人可以向我解释COBOL中嵌套IF语句中的点数.例:

*The first if statement*
 IF SUCCESSFUL-STATUS 
     PERFORM 8300-REPL-LNNTBI00 
        THRU 8300-REPL-LNNTBI00-EXIT 
*The second if statement*
        IF SUCCESSFUL-STATUS 
            DISPLAY 'RECORD ALREADY UPDATED :' WS-INF-REC
        ELSE 
            DISPLAY 'UPDATE ERROR : ' WS-INF-REC ' / ' 
            WS-RETURN-STATUS 
 READ INFILE INTO WS-INF-REC.   
Run Code Online (Sandbox Code Playgroud)

哪个if语句在"WS-INF-REC"之后放置的点是什么?第一个IF还是第二个IF-ELSE?我知道在大多数编程中,它应该是最后一个if语句,但只是为了确保,它对于COBOL是否相同?

pie*_*t.t 5

无论它们是否是- AFAIR一段时间总是关闭所有前面的语句IF,PERFORM无论或-所以你的情况下,第一IF语句来关闭为好.由于时间段很小而容易被忽略,我使用以下规则:

避免使用句号,它们是邪恶的!

只放置语法规则严格要求的时间段,而不是其他地方.使用像END-IF或的显式范围终结符END-PERFORM.它们使您的代码更具可读性和结构清晰度,而由于多个闭包以及隐藏在普通视图中的习惯,这些时间段往往会产生混淆.

  • 我总是喜欢有一个'.' 在退出语句之前就在一行上.在主机上x all; f'.' 所有人都会用'.'向你显示所有行.在上面 (2认同)