0

这是参考以下问题:

从 C 程序中执行程序

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

4

2 回答 2

3

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

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

您的 prog.exe 只需读取标准输入并写入标准输出。

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

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

于 2009-05-29T03:54:55.970 回答
1

谷歌“windows popen”,你会发现这个链接:

lists.trolltech.com/qt-interest/1999-09/thread00282-0.html

C 运行时库也有 _popen(),但我建议不要使用它。

于 2009-05-29T04:00:51.660 回答