输入的数据未正确存储
Data entered not stored correctly
我对编程语言 COBOL 的编译器有疑问。
我使用程序 "OpenCobolIDE" (GnuCOBOL 1.1 Mingw).
首先是示例程序的代码。
IDENTIFICATION DIVISION.
PROGRAM-ID. HelloWorld.
DATA DIVISION.
FILE SECTION.
WORKING-STORAGE SECTION.
01 name pic x(32).
PROCEDURE DIVISION.
beginn section.
DISPLAY "What is your Name?: " with no advancing.
accept name.
DISPLAY "Your Name: ",name .
STOP RUN.
END PROGRAM HelloWorld.
输入我的名字 "Albert" 后,控制台不会发回消息 "Your Name: Albert"。控制台在 "Albert" 之后为空。
但是如果我把字符串名字的长度设置为6,因为我的名字是6个字符长,那么程序就可以正常运行,控制台显示"Your Name: Albert".
除此之外,with no advancing
子句无法正常工作。
当我使用此命令时,控制台不打印 "What is your Name?",它跳过该行,我必须先输入我的名字,输入我的名字后,控制台显示:"What is your Name?: Albert"。但在编译程序的 .exe 中,命令行 with no advancing
工作正常。
为什么会这样,我该如何修复?
您似乎使用嵌入式 python 控制台 OCIDE 以实现更好的集成。副作用是:它不是完整的功能,一旦你开始使用除了非常简单的 ACCEPT
/DISPLAY
之外的任何东西,你应该禁用它:
首选项 (F2) -> 选项卡 运行 -> 检查 "Run in external terminal"
顺便说一句:OpenCOBOL windows 安装 IDE 附带了 GnuCOBOL 的最新官方 MinGW 包。目前是 1.1,但 very 很快就会成为 GnuCOBOL 2.0 rc2(或最终版本),我强烈建议使用这个而不是旧的 GnuCOBOL 1.1。您可以获得非官方 preview version with the rc1 and/or 敬请期待新版本(它也可能会添加到 OCIDE)。
编辑:如评论中所见:
The Problem was the old version of GnuCOBOL 1.1, because after updating it works correctly!
我对编程语言 COBOL 的编译器有疑问。 我使用程序 "OpenCobolIDE" (GnuCOBOL 1.1 Mingw).
首先是示例程序的代码。
IDENTIFICATION DIVISION.
PROGRAM-ID. HelloWorld.
DATA DIVISION.
FILE SECTION.
WORKING-STORAGE SECTION.
01 name pic x(32).
PROCEDURE DIVISION.
beginn section.
DISPLAY "What is your Name?: " with no advancing.
accept name.
DISPLAY "Your Name: ",name .
STOP RUN.
END PROGRAM HelloWorld.
输入我的名字 "Albert" 后,控制台不会发回消息 "Your Name: Albert"。控制台在 "Albert" 之后为空。 但是如果我把字符串名字的长度设置为6,因为我的名字是6个字符长,那么程序就可以正常运行,控制台显示"Your Name: Albert".
除此之外,with no advancing
子句无法正常工作。
当我使用此命令时,控制台不打印 "What is your Name?",它跳过该行,我必须先输入我的名字,输入我的名字后,控制台显示:"What is your Name?: Albert"。但在编译程序的 .exe 中,命令行 with no advancing
工作正常。
为什么会这样,我该如何修复?
您似乎使用嵌入式 python 控制台 OCIDE 以实现更好的集成。副作用是:它不是完整的功能,一旦你开始使用除了非常简单的 ACCEPT
/DISPLAY
之外的任何东西,你应该禁用它:
首选项 (F2) -> 选项卡 运行 -> 检查 "Run in external terminal"
顺便说一句:OpenCOBOL windows 安装 IDE 附带了 GnuCOBOL 的最新官方 MinGW 包。目前是 1.1,但 very 很快就会成为 GnuCOBOL 2.0 rc2(或最终版本),我强烈建议使用这个而不是旧的 GnuCOBOL 1.1。您可以获得非官方 preview version with the rc1 and/or 敬请期待新版本(它也可能会添加到 OCIDE)。
编辑:如评论中所见:
The Problem was the old version of GnuCOBOL 1.1, because after updating it works correctly!