gpt4 book ai didi

cobol - COBOL 中的命令等待?

转载 作者:行者123 更新时间:2023-12-02 07:16:34 30 4
gpt4 key购买 nike

COBOL 中是否有一种“等待”功能?
我写了一个计算器,为了让它更 50 多岁,我打印了“计算”。 “计算..” ecc
例如:

                   DISPLAY "SECONDO NUMERO"
ACCEPT B
COMPUTE C= A * B
DISPLAY "Computing"
DISPLAY "Computing."
DISPLAY "Computing.."
DISPLAY "Computing..."
DISPLAY "Computing...."
DISPLAY "Computing....."
DISPLAY "Computing......"
DISPLAY A "x" B " FA..."
DISPLAY C

现在,有没有办法在我放置“计算”部分的 COBOL 上稍微延迟(半秒)?我为这个项目创建了一个 github 存储库( https://github.com/aIDserse/Super-utility-Submachine-COBOL-CALCULATOR ),查看它(引用 1.3 版)以获得完整的代码(并且可能会传播它哈哈)。谢谢!!!

最佳答案

有一个在标准 COBOL 中 sleep 的声明,但仅限于 COBOL 202x :

           CONTINUE AFTER arithmetic-expression SECONDS

由于该标准处于委员会草案状态,因此很难找到实现,但正如您所要求的 GnuCOBOL - GnuCOBOL 3.1 已经实现了它。

除此之外,还可以使用一些特定于方言的库例程,例如源自 ACUCOBOL-GT 的 CALL "C$SLEEP"(也使用 GnuCOBOL 实现,但请注意,3.1 之前的版本仅使用非小数部分,因此 "0.9" 将休眠零秒)。

对于 OpenCOBOL/GnuCOBOL,您可以调用 CBL_OC_NANOSLEEP / CBL_GC_NANOSLEEP 库例程。

对于任何可以调用 native 例程的 COBOL 环境,您都有 CALL "sleep" 的变体。

由于 mentioned by Rick Smith 许多 COBOL 实现还实现了一个可调用的 SYSTEM,您可以在其中使用类似 ping localhost 的超时代码,但是您调用的任何内容都可能不可用(或者运行 COBOL 环境的进程无法访问它)。

Stephen Gennard mentioned 一个非常常见的扩展:
           ACCEPT something WITH TIMEOUT

它有一个“注意”不同的环境使用不同的尺度(一些秒,一些毫秒)。这有利于用户可以通过按下一个键(通常是一个功能键)来“突破”;以及它可能只能在“图形”环境中工作的附加问题。

Anton 的回答强调了 IBM 库例程 CEE3DLY

关于cobol - COBOL 中的命令等待?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61860838/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com