如何通过C/C++从Linux命令输出?并适合Android?

我尝试运行Linux命令并使用C/C++代码从中读取输出.我搜索exec但这不涉及输入/输出.我想要实现的是通过使用此命令iwconfig获取有关无线LAN的信息,从C/C++代码调用它.我还需要一个合适的代码,使用NDK作为Android的li...

我尝试运行Linux命令并使用C/C++代码从中读取输出.
我搜索exec但这不涉及输入/输出.

我想要实现的是通过使用此命令iwconfig获取有关无线LAN的信息,从C/C++代码调用它.

我还需要一个合适的代码,使用NDK作为Android的lib.

我在android开源中看到他们调用了这个函数

你怎么看待这段代码?

int wpa_ctrl_request(struct wpa_ctrl *ctrl, const char *cmd, size_t cmd_len,
                 char *reply, size_t *reply_len,
                 void (*msg_cb)(char *msg, size_t len))
                {
        DWORD written;
        DWORD readlen = *reply_len;

if (!WriteFile(ctrl->pipe, cmd, cmd_len, &written, NULL))
    return -1;

if (!ReadFile(ctrl->pipe, reply, *reply_len, &readlen, NULL))
    return -1;
*reply_len = readlen;

return 0;

}

这是 link

解决方法:

您可以尝试运行该命令并将结果输出到文件,然后读取它

system("iwconfig > temp.txt");
FILE *fp=fopen("temp.txt","w");

本文标题为:如何通过C/C++从Linux命令输出?并适合Android?