问题标签 [gnucobol]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1211 浏览

cobol - 如何获取cobol目录中的所有文件

我正在使用 GnuCOBOL(使用 Windows),我需要用它编写一个编译器。

我要问的是 - 给定目录路径,我可以使用 COBOL 修改其中的文件吗?重要的是说您不知道文件名。您只知道包含它们的目录的路径。

0 投票
1 回答
153 浏览

cobol - GnuCOBOL 程序在两行的细微更改后无法编译

我有 Ubuntu 12.04.5,我已经安装了 GnuCOBOL 平台,并且我已经编写了 GnuCOBOL 一段时间没有问题。

我现在正在做一些非常微不足道的事情:我有一个程序 MULT03.cob,我已经编译并运行如下:

然后我所做的是我在程序代码中引入了一个真正的微观变化(我确信问题在更高的层次上,在链接/环境变量或其他方面,但我没有改变任何东西)并得到

MULT04.cob 基本上是 MULT03.cob 更改了两行。两者都在目录、源代码、目标代码和所有内容中:

我很想知道是什么让运行时系统找到了一个而不是另一个。我尝试过以不同的方式命名 MULT04(不是必须的,只是为了排除错误源)。其他早期程序编译和运行没有问题:

这些是(略有不同的)代码段:

后段是MULT04.cob,前段是MULT03.cob。

0 投票
1 回答
196 浏览

c - 来自 dlsym 的通用函数,带有取消引用的浮点数

GnuCOBOL 编译器通过使用动态符号查找来支持动态 CALL,但这里的 MCVE 严格来说是 C,并且比最小证明(我认为)4 和 8 字节大小都有效。

这是 AMD-64,所以 sizeof *float 不等于 sizeof float。

该问题仅在由 dlsym 查找中的通用(在本例中未签名)函数指针调用时取消引用浮点数时才会出现。

带着一连串

我想我需要一些关于 64 位 ABI 在取消引用浮点数据时如何处理未签名调用的教育。

包含 COBOL 标记是因为当使用 FLOAT-SHORT (C float)和 CALL BY VALUE 时,这会破坏 GnuCOBOL (生成 C 中间体),而 FLOAT-LONG (C double) CALL BY VALUE 可以工作,32 位整数也是如此。

顺便说一句,我很确定这不是 gcc 中的错误,因为 tcctcc -rdynamic -g -o tccmcve stackoverflow.c -ldl显示相同的输出,浮动取消引用似乎很无聊,所以我倾向于(并希望)这是一个可修复的东西,给出正确的语法提示到编译器,或编译时选项。

0 投票
1 回答
188 浏览

cobol - 编译器认为我指的是不存在的段落或部分

在我的一项课堂作业中,我遇到了有关我的程序部门的错误。这是一个 COBOL 程序,应该保持申请人的平均身高和体重、棕色眼睛的申请人数、男性申请人数和女性申请人数的总和。此外,该程序应该打印满足特定要求的申请人的信息,但我的几乎所有执行语句都出现错误

COBCH0034 操作数操作数应该是数字 在此上下文中需要一个数字值,并且您指定了一个非数字值。

COBCH0014 操作数无效 您指定的操作数在某种程度上不正确,您的 COBOL 系统无法处理。例如,您可能指定了一个负整数,其中只允许使用正整数

0 投票
1 回答
812 浏览

cobol - 使用另一个表中的索引

如果使用另一个表的索引访问表元素(没有索引的表),则可能会在 IBM 主机上出现表溢出错误。但是在使用 GnuCOBOL(以前称为 OpenCOBOL)时,相同的程序不会导致崩溃或消息(即使有调试选项)。

例如

是否有编译器选项来发出警告以避免这种用法?

通过使用正确的用法可以避免此错误。即,使用变量“IX”,而不是使用不同表的索引(S-SUB)。

一般来说,交换独立表(不同大小)的索引似乎是错误的。

0 投票
1 回答
1284 浏览

ide - 如何在 DB2 Express C、Windows 8.1、GnuCOBOL、OpenCOBOL IDE 中解析 SQLCODE -805

我正在尝试使用 OpenCOBOL IDE 和 DB2 Express-C。一个非常简单的程序 TEST0002.sqb 已准备好并与 DB2 创建绑定 - TEST0002.bnd 和 TEST0002.cbl 文件。现在,当我在 OpenCOBOL IDE 中执行程序时,我得到 -805。显示以下消息:(另附)

TEST0002.sqb

准备、装订和包装信息

预编译后的COBOL源 TEST0002.cbl

0 投票
1 回答
260 浏览

cobol - 在 COBOL 中启动子进程

如何在 GnuCOBOL 中启动子进程?

在 Node.js 中,我们可以使用spawnexec来启动子进程:

上面的两个示例都运行ls -l(列出文件和目录)。如何在 COBOL 中实现相同的目标?

0 投票
1 回答
273 浏览

gcc - 涉及开放 cobol dll 的 jni 调用

我正在尝试使用 JNI 调用现有的 COBOL 应用程序。COBOL 应用结构如下。

现有的 COBOL 应用程序涉及多个静态调用子程序 (COBOL) 和许多动态 (COBOL) 子程序。

应用程序的 Jni 调用正常,但无法定位和调用 COBOL 动态子模块。

修改后的Application结构(针对jni)如下:

我在 CALL 之前验证了 COB_LIBRARY_PATH 和 LD_LIBRARY_PATH 环境变量,这些似乎没问题。

在案例动态模块中收到以下错误消息。

我在 linux 上使用 64 位,1.1.0。gcc 用于使用 cobc 命令的 c 输出创建二进制文件

0 投票
1 回答
1423 浏览

cobol - 索引文件错误

我正在尝试按索引打开文件,但不断收到以下错误。从我能找到的所有 COBOL 代码示例中,我看不到我的错误在哪里。

我能够按顺序打开文件就好了。这似乎是试图以索引方式打开它。

错误:

系统:

代码:

文件内容:

0 投票
1 回答
1312 浏览

linux - Cobol - 语法错误,意外 $undefined,期待“文件结尾”

我在 cobol 中的语法有问题。我在 Ubuntu 4.2.0-16-generic 上使用 open-cobol 包,但出现错误:

我的 cal.cbl 文件:

我是 cobolt 的新手,我对列有所了解,这就是我使用 -free 标志进行编译的原因,但这个错误对我来说毫无意义。

为什么会出现这个错误,请帮忙:)