c - 如何从 C 程序读取输出并为程序提供输入?

标签 c windows input system

这是引用以下问题:

Execute program from within a C program

如何在 Windows 上使用 Tiny C 编译器执行相同的操作? 我需要执行一个 .exe fro c 程序,并通过使用文件或字符串作为源从同一 C 程序中为其提供输入,并将其输出读取到字符串或文件中。我一直在使用 system() 函数。欢迎提出任何建议或示例。提前致谢

最佳答案

如果你没有 popen() 等,或者你想避免复杂性,最简单的方法就是简单地编写一个数据文件,例如。 infile 用fwrite() 执行外部程序用system() 然后读取outfile。

system("prog.exe <infile >outfile") 

您的 prog.exe 只需读取 stdin 并写入 stdout。

通过这种方式,您可以轻松地使用输入/输出文件的内容对其进行测试。 您通常会在 tmp 目录中执行此操作,然后在完成后将其删除。

唯一要注意的是 .exe 的路径

关于c - 如何从 C 程序读取输出并为程序提供输入?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/924289/

相关文章:

linux - 在家用 PC 上工作,但在不同的服务器上进行 Web 开发

c - 如何在同一套接字上循环发送 send() 和 receive() ?

c - 非数字输入导致死循环

c++ - 简单的音频处理库?

c++ - Console+Windows的窗体

c - 错误 C2059 : syntax error : 'bad suffix on number' with cl. exe vc 编译器

input - JasperReports 动态输入控件

检查数组的出现次数并输出到新数组。 C

c - 为什么我的 C 代码不打印任何输出?

c - 如何将文本文件中一行中的整数分配给c中的变量?