`
cuiyadll
  • 浏览: 196314 次
文章分类
社区版块
存档分类
最新评论

[b]关于COBOL的EXIT[/b]

阅读更多
关于COBOL的EXIT
看到有人发关于EXIT的帖子,发现不能回复了,在这里谈谈自己对EXIT的心得
个人认为EXIT的存在和GOTO语句的运用有关。
EXIT很形象,表示出口。
那它是怎样提供出口的呢
比如有这样一段
PERFORM A THRU B
STOP RUN.
A.
   DISPLAY 'A'
   GOTO B
B.
   EXIT.
C.
   DISPLAY 'C'
D.
   DISPLAY 'D'
这样就会打印A
但是现在改改,不用PERFORM THRU的结构
PERFORM A
STOP RUN.
A.
   DISPLAY 'A'
   GOTO B
B.
   EXIT.
C.
   DISPLAY 'C'
D.
   DISPLAY 'D'
这样程序会乱跳的,会打印A C D
虽然现在都禁止用GOTO语句,但是个人认为GOTO语句在程序STEP BY STEP CHECK中省略后续CHECK方面还是很强大的,比较容易看,其实很多老程序的GOTO要做的也就是这样的事情。
所以有GOTO语句的程序为了防止程序乱跳,会使用PERFORM THRU的句子来执行其实一个段能实现的功能。THRU后面那个段用什么句子呢,几个做COBOL的老头一商量,就用EXIT,什么都不做。就是这样的
所以我认为没有GOTO语句的程序直接PERFORM就够了,不需要PERFORM THRU。
不过现在都要求写成PERFORM THRU的样子,也不准用GOTO语句,不懂的人写个带GOTO语句并且单纯PERFORM的程序就明白了。

转自:http://www.mainframer.cn/tech.mrqa?action=view&id=3861
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics