0

popen()在 C++ 程序中使用。我看到它们是定义在stdio.h. 我正在尝试让我的 IDE(KDevelop 4)识别popen().

我查看了实际的源代码stdio.c。在这里,popen不会被任何宏或任何东西“包裹” - 它看起来像任何其他典型功能stdio.h

那么,为什么popen()我的 IDE 无法识别呢? #include <stdio.h>应该是所需要的,但它不起作用......

我在 MAN 页面中注意到他们谈论功能测试宏。In stdio.h,popen()不被任何宏包裹(同样,它看起来像任何其他函数)。此外,当我尝试包含这些宏之一时,例如#define _POSIX_C_SOURCE 2,问题没有解决 -popen()仍然无法识别。

该程序编译(g ++)并正确运行。我只是想知道这里发生了什么。

(StackOverflow 上的另一个线程解决了这个问题,但没有得到满意的答案:popen 隐式声明,即使添加了#include <stdio.h>

4

0 回答 0