gpt4 book ai didi

c - 将 (void) 系统的输出保存到变量 (C)

转载 作者:太空宇宙 更新时间:2023-11-04 08:41:52 26 4
gpt4 key购买 nike

这是我的代码:

#include<stdlib.h>
#include<stdio.h>

int main()
{
(void)system("cat json.json | ./jq.exe '.location | {street, city}'");
return 0;
}

我想将 (void)system 的输出保存到一个变量中,但我该怎么做呢?

最佳答案

您必须创建一个 pipe并将系统调用的输出重定向到该管道,然后从管道读取数据——这就是 popen 的内容调用本质上是这样,这意味着您应该将 system 调用转换为 popen 调用,然后从文件描述符中读取到您要填充的变量。

您可以在此处找到有关如何在堆栈溢出时使用 popen 的示例; linux command executing by popen on C code

关于c - 将 (void) 系统的输出保存到变量 (C),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23255140/

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