我想同时打开一个管道read
,fd_cloexec
但是,我不知道如何设置popen()
函数的第二个参数,如果运行以下代码,子进程中仍然有管道的文件描述符。
#include <stdio.h>
int main()
{
FILE *p=popen("ls -l","re");
char buf[100];
memset(buf,0x00,100);
fread(buf,sizeof(char),10,p);
if (fork()==0)
{
while(1)
{
}
}
printf("%s",buf);
pclose(p);
return 0;
}