问题标签 [freopen]

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 回答
183 浏览

c++ - freopen() 不读取/写入现有文件,niether 在 vscode 中创建新文件

我正在尝试从 C++ 中的两个单独的文本文件中读取输入和输出。

代码(test.cpp):

输入.txt:

output.txt 为空

在 VS 代码中使用终端并编写命令时:

g++ 测试.cpp

.\a.exe

读取输入文本文件中的数据并将数据写入输出文本文件。

运行后的结果

但是如果我使用调试,输入和输出文件不会被程序识别。没有输入和输出被读/写。没有显示错误,程序刚刚结束。

使用调试后的结果

启动.json:

}

我希望文本文件的输入/输出也能在调试时发生。

0 投票
0 回答
52 浏览

c++ - cin 在 wsl windows 中不能与 freopen 一起使用

我在wsl中运行这个简单的cpp代码,它输出无限次。

原因是当我将输入输入变量t时,它根本不接受,并且它仍然具有向它启动的垃圾值。

我在 VSCode 上使用 WSL。

输入:

2 1 0

输出:

输出截图

cin正常的控制台输入下工作正常,但不适用于freopen().

为什么会这样?这是freopen()函数的问题吗?还是我的 WSL 安装有问题?

0 投票
1 回答
141 浏览

c++ - 在 C++ 中使用 freopen 没有得到输出:-vs 代码显示

在 vs 代码中使用 freopen 输入和输出我的程序在 c++ 中的结果时,我没有在 ouput.txt 文件中得到输出。例如:我创建了一个程序来输入编号。n 和输出 n+1。但是在输入中输入 24 时,我在 ouput.txt 中得到 32765,但在我的终端中,我得到 25 就是这样。通过一次又一次地编译程序,32765 变为 32767 等等。

0 投票
1 回答
25 浏览

c++ - 使用 std::cout 写入文件时的额外输出

我正在尝试从文件中读取数据in.txt,经过一些计算,我将输出写入out.txt

为什么末尾有一个额外的7 out.txt

课堂内容Solution

功能的内容main

假设所有标题都包括在内。findComplement翻转数字的位。例如,整数 5 在二进制中是“101”,其补码是“010”,即整数 2。

的内容in.txt

的内容out.txt

0 投票
2 回答
65 浏览

c++ - Freopen在函数调用后不写输出

我正在做一个编程问题,并正在使用 freopen 重定向流。我面临的问题是在 stdout 重定向之后printf命令没有在输出文件上打印。我什至尝试使用 fflush 但没有得到任何结果。

这是我的代码

这是我的 input.txt

我的 output.txt 是空的。代码编译良好并且没有错误,它只是运行并完成,而不在输出文件上打印任何内容。一件奇怪的事情是,如果我从 main 中注释掉函数调用,输出会打印在 ouput.txt 上。我不明白为什么会发生这种情况,因为我认为函数内部没有任何东西可能会影响文件流。任何帮助表示赞赏,我现在完全没有想法!

0 投票
1 回答
48 浏览

c - 使用 freopen 重定向标准输出的简单 c 应用程序中的调试和运行结果不同

我正在使用linux manjaro。我有以下代码(cons.c)

我执行了以下操作并得到了预期的结果

当我在底线设置断点并使用 VS Code 交互式调试器进行调试时,g 返回 null 并且 printf 什么也不做。

0 投票
2 回答
31 浏览

c - 使用 freopen 在 C 中进行动态文件流处理

我正在尝试编写一个程序,该程序理想地接受指定源文件(读取)和目标文件(写入)的参数。

程序将源文件中的指定字符替换为其他指定字符,然后将输出写入目标文件。

不过,我想处理 3 种特殊情况:

  1. 仅提供要读取的源文件。

    期望行为:显示替换文本到标准输出(终端)的结果

  2. 仅提供要写入的目标文件。

    期望行为:从标准输入读取,替换所需字母并将结果写入提供的目标文件名。

  3. 既不提供源文件也不提供目标文件。

    期望行为:从标准输入读取、替换字符、写入标准输出。

我相信做到这一点的方法是使用freopen(),但我无法理解文件何时打开或freopen()第三个参数(流)如何工作的逻辑。

处理这个问题的传统方法是什么?甚至是freopen()我正在寻找的功能吗?或者是否有一些针对此类情况的鲜为人知的功能?

一些伪代码将不胜感激。

0 投票
1 回答
25 浏览

c - 使用 freopen() 和 scanf() 从文件中读取一个 int

我尝试使用 freopen() 从文件中读取 int。文件in.txt只是有一个数字:1,但我在输出中得到的是 -858993460。我的代码如下所示:

为什么 scanf() 不能正确地从in.txt中读取?