问题标签 [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 回答
6457 浏览

c - Using freopen to read file

I have an assignment where I implement binary search and linear search. The "hard" part is done and both of the those methods are implemented and work. My professor wants us to test arrays with large number of integers. He gave us a .in file that had input in the style that he wants and I'm trying to use freopen to read the file.

The file starts out with 2 numbers in one line, number of elements in the list and the number of element that you are looking for in the first list.

then it read a line with all the numbers in list 1 and then the next line reads all the numbers in list 2

I can't get freopen() to work properly and I would like to know if there are any suggestions out there.

sample input.in file:

My code would later tell me that 26 is found and 35 was not. My main issue is reading the input file in main instead of manually typing in the terminal. Help please.

0 投票
2 回答
1517 浏览

c - 如何使用 C 中的 argv 重定向给定文件中的标准输出和标准输入

我想在 argv 数组中给出的特定文件中重定向标准输出和标准输入。

例如,当我输入类似 - ./shell ls > test 这样的命令时

它应该被重定向到“测试”文件,现在我有点困惑,因为没有编写任何代码它会自动重定向到该文件,我想手动执行它,其次,当我输入一个命令时 - ./shell ls < test ,标准输入应该被重定向。我尝试使用 argv[argc-1] 和 argv[argc-2] 查找文件名和“>”或“<”符号,但似乎当我之后使用“>”和文件名时,输出打印(该文件中 ">" "<" sing) 之前的参数,而不是获取该名称和符号。

基本上,我正在使用 execvp() 和 fork() 创建一个 shell 命令。

这是我的代码,我可以在静态文件中重定向标准输出。

0 投票
1 回答
225 浏览

android - freopen 返回 errno 14 EFAULT:执行时。(手臂,Linux,安卓)

freopen 返回 errno 14:相当于 EFAULT-BAD ADDRESS 在 Ubuntu 上交叉编译。在基于 arm 的 android 设备 Kernel 3.0.23 perf 上执行

代码 :

0 投票
0 回答
274 浏览

c - Freopen 拒绝追加到文件只是覆盖

我正在尝试在 C 中制作一个 shell。除了文件重定向之外,一切正常。我认为我的代码看起来是正确的,并且我已经尝试了一切以使其正常工作。问题是,当用户输入 >>(例如 ls -l >> foo.txt)时,它应该附加到现有文件,但在我的代码中它会覆盖文件。我的程序正在检测 >> 但我不知道为什么它会覆盖而不是附加,因为我什至在 freopen 中有“a+”。所有参数都正确传递,但重新打开很困难。

我有问题的代码:

0 投票
3 回答
3404 浏览

c++ - 如何告诉程序停止使用 freopen

我是 C++ 的初学者,我有一个超出我能力范围的问题。我在 GNU GCC 下编译。我用

也称为:

在我的程序中的某个时刻,我告诉程序使用文件 de_facut.txt 作为 in 文件:

如何告诉程序使用控制台来放置输入(默认)而不是in文件?首先我想从该文件中读取,但稍后程序中我希望用户在控制台中输入输入。我希望你能理解我的问题,我的英语不太好。

0 投票
1 回答
200 浏览

c - 如何在没有文件名的情况下重新打开文件流并将其清空?

假设我有一个文件流。

我想以某种方式再次打开它,但我也想清空它,这次我无法访问文件名。我尝试执行以下操作,但似乎并没有改变输出。

它仍然在输出文件中显示“测试”。

0 投票
1 回答
503 浏览

c - 使用 freopen 写入子目录

我正在尝试使用 freopen 写入子目录中的文件:

freopen("output/output-1.txt", "w", stdout);

我尝试将其更改为输出到当前目录并且它可以工作。当目标输出文件位于子目录中时,它会无错误地终止;但是没有创建文件。创建所需的目录并不能解决问题。

有人对此有解决方案吗?

0 投票
1 回答
993 浏览

ios - Swift stderr 和 stout 成单个文件

对于 iPhone 应用程序,我需要将调试数据收集到一个文件中,然后发送到在线服务进行分析。通过将stderr输出转移到文件句柄并在适当时发送文件,这可以正常工作。(NSLog输出也stderrstdout.

这是我保存到文件的方法:

上面正确地返回了一个UnsafeMutablePointer<FILE>我跟踪的,以便在必要时关闭文件。

但是,我需要一个文件的内容,stdout并且stderr逐行具有正确的时间顺序。

这样做的原因是我正在尝试调试第三方框架,该框架会产生诊断输出,但会将其写入stdout而不是stderr.

知道如何做到这一点吗?

0 投票
1 回答
1292 浏览

c - C - 终端写入和输出到文本文件

我是一名学习 C 入门课程的学生,我们的第一个 C 期中考试即将到来。我们的测试环境会将我们的操作和 printf 输出存储到一个文本文件中。但是,我们的 TA 建议我们自己使用fprintf写入文件以防万一。

有没有一种非常简单的方法可以将我的终端/控制台输出和输入(我在scanf之后输入的内容)复制到像 output.txt 这样的文本文件中?

我试过了

freopen("output.txt","w",stdout);

但这不会将我的 scanf 输入写入文本文件。

任何人都可以帮忙吗?

0 投票
1 回答
435 浏览

linux - 将标准输出重新打开到 Linux 守护程序的常规文件?

我知道守护程序不应写入stdout(and stderr),因为一旦与控制终端分离,它将不可用。但是我可以重新打开stdout一个常规文件,以便我所有的原始日志记录仍然有效吗?这对我来说非常好和有用。

我在分叉后尝试了这样的事情,

可以启动守护程序(准确地说,它不会失败并退出)并且可以创建日志文件。但是日志是空的(没有“守护进程!”)。这不是守护进程的正确方法吗?有人可以解释一下吗?