我打开一个流与funopen为什么fileno无法返回有效的描述符?
FILE *fin = funopen(cookie, readfn, NULL, NULL, closefn);
if (fin == NULL)
{
handle_error();
return -1;
}
int fdin = fileno(fin);
的呼叫funopen成功,但fileno(fin)
回报-1
。
如何获得文件描述符?谢谢。
我打开一个流与funopen为什么fileno无法返回有效的描述符?
FILE *fin = funopen(cookie, readfn, NULL, NULL, closefn);
if (fin == NULL)
{
handle_error();
return -1;
}
int fdin = fileno(fin);
的呼叫funopen成功,但fileno(fin)
回报-1
。
如何获得文件描述符?谢谢。
没有文件连接到funopen,因此没有fd。如果你需要,试试tmpfile
。
“funopen”究竟做了什么? –
请注意[funopen](http://www.gsp.com/cgi-bin/man.cgi?section=3&topic=funopen)特定于BSD。 –
@Sander - 我觉得它像'fopen',但更多'乐趣' – Hogan