gpt4 book ai didi

c - 从 gui 前端启动控制台应用程序

转载 作者:太空狗 更新时间:2023-10-29 12:37:28 25 4
gpt4 key购买 nike

你能告诉我最好的方法吗?我可以使用 popen,但每次我需要启动我的应用程序时都必须为参数创建一个大缓冲区。我可以使用 fork + execv,但是程序会写入 stdout,我无法读取输出(无法在文本字段中显示)还有其他解决方案吗?

最佳答案

Could you please tell me the best way to do it? I can use popen, but it is nesessary to create a large buffer for arguments every time I need to launch my application.

popen() 是一种很好的标准方式,如果您只需要与子应用程序进行单向通信,例如写入其 stdin 或从 stdout< 读取,但不能两者兼而有之。

当使用 C 时,需要熟悉字符串。使用 a string library for C 有很大帮助简化字符串操作,例如您的情况下的字符串连接,因为标准 C 库仅为此提供基本的低级函数。

I can use fork + execv, but then the program writes to stdout and I cant read the output ( to display it in the text field )

popen() 为您提供指向子程序的 stdoutFILE* 指针,您可以使用标准 C I/从中读取其输出O函数fread()fscanf() .同样,标准 C 库 has this functionality熟悉它是值得的。

Is there any other solution?

您可以让子程序写入文件然后读取该文件,但无论如何您都需要能够构造命令行字符串并读取文件。

关于c - 从 gui 前端启动控制台应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7300000/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com