You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用GNUCOBOL编译运行程序无任何输出该如何解决

问题原因

你遇到的无输出问题核心是代码存在语法疏漏,导致PROCEDURE DIVISION未被编译器正确识别:
你的代码中AUTHOR. Myself行末尾缺少必须的句号,COBOL语法要求标识部(IDENTIFICATION DIVISION)的所有描述语句都必须以句号作为终止符,缺失句号时,编译器会把后续所有行都识别为AUTHOR条目的备注内容,相当于你写的过程部代码被完全当成了注释,程序自然没有任何执行逻辑。
另外你使用的GNUCOBOL 2.2.0默认采用COBOL标准固定格式解析代码,如果你的代码是自由格式编写(比如代码内容从第1列就开始写),也会出现解析异常。

解决步骤

  1. 先修正代码语法,给AUTHOR行补全句号,修正后的完整代码如下:
IDENTIFICATION DIVISION.
           PROGRAM-ID. HELLO-WORLD.
           AUTHOR. Myself.

           PROCEDURE DIVISION.
           DISPLAY "HELLO WORLD".
           STOP RUN.
  1. 如果你的代码是自由格式编写(没有遵守前6列为序号区、第7列为指示符区的固定格式规则),编译时需要添加-free参数指定自由格式解析:
cobc -x -free hello_world.cob
  1. 若需要排查其他隐藏问题,可以在编译时添加-v参数输出详细编译日志,确认过程部是否被正常识别:
cobc -x -v hello_world.cob

修正后重新编译运行,即可正常输出HELLO WORLD。

内容的提问来源于stack exchange,提问作者ABCDEF

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.07 08:09:03