c - 如何将控制台中的文本保存到 C 中的字符串(Windows 平台)

标签 c windows console

我目前正在为一个学校项目构建一个控制台应用程序,我的应用程序确实需要这个功能。

如何将控制台中的所有文本保存为 C(Windows 平台)中的字符串?

例如:

如果我使用函数system("dir"),它会输出到控制台并列出目录中的所有子目录和文件。我希望将它保存在一个字符串中以备后用。

最佳答案

你可以使用 popen()而不是 system():

#include <stdio.h>
#include <limits.h>

int main()
{
    FILE *fp;
    char path[PATH_MAX];

    fp = popen("DIR", "r");
    if (fp == NULL)
    {
        /* Handle error */
    }

    while (fgets(path, PATH_MAX, fp) != NULL)
    {
        printf("%s", path);
    }

    pclose(fp);
    return 0;
}

关于c - 如何将控制台中的文本保存到 C 中的字符串(Windows 平台),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8959148/

相关文章:

c - 链接列表中的取消引用错误 - 不是 typedef 错误

c - 在 C 中提取位并重建

windows - pycharm 无法识别 Git

javascript - UIWebVIew Javascript Document.location

c - 无需使用任何循环即可查找原始数组的第n个元素的代码

c - 使用内部静态变量来提高性能?

c# - 无法加载 asmx 文件?

windows - Ghostscript On Windows 导致 -dPDFSETTINGS 选项无效

c - msys2 如何显示来自非控制台应用程序的控制台输出?

php - 在 linux 控制台中返回一行?