我在我的业务中使用COBOL,而我最初是在一个网站上学习使用的perform - thru ....
现在我已经改变了工作,当地的编程标准也不同了,所以我需要习惯PERFORM而不用THRU.
我也对段落中句号/期间/点的使用存在疑问.
您可以使用句点来结束段落中的句子.我之所以这么说,是因为我读到了段落以第一点结束的地方,而在其他地方,我看到全程/句号/点使用的方式不同.
我写了两个结构,我理解应该是平等的.是这样吗?
结构A:
PERFORM 100-WRITING.
PERFORM 200-FINISH.
100-WRITING.
*-----------
DISPLAY "HI MY NAME IS FELIPE".
DISPLAY "THE WORLD IS GREAT".
DISPLAY "I DONT SPEAK ENGLISH".
200-FINISH.
*----------
DISPLAY "BYE BYE BABY".
DISPLAY "ESTO ES TODO".
Run Code Online (Sandbox Code Playgroud)
结构B:
PERFORM 100-WRITING.
PERFORM 200-FINISH.
100-WRITING.
*-----------
DISPLAY "HI MY NAME IS FELIPE"
DISPLAY "THE WORLD IS GREAT"
DISPLAY "I DONT SPEAK ENGLISH".
200-FINISH.
*----------
DISPLAY "BYE BYE BABY"
DISPLAY "ESTO ES TODO".
Run Code Online (Sandbox Code Playgroud)
你是对的,你展示的代码是等价的.
段落或部分必须以句号/期间/点结束.这意味着段落或SECTION中的最后一项(除注释或空行之外)必须是句号/期间/点.
这并不意味着一个句号/期间/点实际上结束了段落或部分.你是对的,段落中的句号/句号/点结束了一个句子.段落或SECTION必须仅包含句子.因此,段落或SECTION必须以句号/句号/点结束,因为句子必须以1结尾.
PERFORM 100-WRITING
PERFORM 200-FINISH
.
100-WRITING.
*-----------
DISPLAY "HI MY NAME IS FELIPE"
DISPLAY "THE WORLD IS GREAT"
DISPLAY "I DONT SPEAK ENGLISH"
.
200-FINISH.
*----------
DISPLAY "BYE BYE BABY"
DISPLAY "ESTO ES TODO"
.
Run Code Online (Sandbox Code Playgroud)
自从1985年的COBOL标准以来,句子在COBOL中不再是真正重要的PROCEDURE DIVISION,所以如果编码器使它们变得重要,它只是额外的工作.
我觉得像上面那样重写更方便.不要将句号/句点/点附加到任何东西上.把它放在自己的线上.那么这意味着你可以移动段落/段落中的任何一行,而不必担心全停/周期/点是否在正确的位置,因为它实际上并没有附加到任何东西,所以它永远不会移动到你需要它用于下一段/ SECTION.
但是,您的站点编码标准可能不允许您这样做.您总是可以尝试让它们变得更好:-)