小编A. *_*ray的帖子

使用 std::fstream 会导致程序在 PASE for i (7.3) 中以 SIGILL 结束

我正在 IBM 的 CECC 服务的 IBM i 7.3 环境中工作。我正在尝试在 PASE 环境中测试大型应用程序,但在使用该库的脚本时遇到了问题<fstream>。以写入模式打开文件会导致脚本以SIGILL.

为了测试这个问题,我编写了以下脚本:

#include <iostream>
#include <fstream>

int main()
{
        std::ofstream writer;

        std::cout << "Writing file.\n" << std::endl;

        writer.open( "out.txt" );
        if ( !writer.is_open() || !writer.good() )
        {
            std::cerr << "Unable to open file." << std::endl;
            return (1);
        }

        writer << "This is a test.\n" << std::endl;

        writer.close();

        return (0);

}
Run Code Online (Sandbox Code Playgroud)

执行脚本的结果是:

Writing file.

Illegal instruction (core dumped)
Run Code Online (Sandbox Code Playgroud)

在GDB中:

(gdb) run
Starting program: /storage/persist/[app-directory]/test/log/test_write
[New Thread 1] …
Run Code Online (Sandbox Code Playgroud)

c++ fstream g++ ibm-midrange

2
推荐指数
1
解决办法
308
查看次数

标签 统计

c++ ×1

fstream ×1

g++ ×1

ibm-midrange ×1