_fileno

获取文件描述符与流。

int _fileno( 
   FILE *stream 
);

参数

  • stream
    为 FILE 结构的指针。

返回值

_fileno 返回文件描述符。无错误返回。,如果 stream 不指定打开文件,则结果是未定义的。如果流是 NULL, _fileno 调用无效参数处理程序,如 参数验证所述。如果执行允许继续,此函数返回 -1 并将 errno 到 EINVAL。

有关这些属性和其他错误代码的更多信息,请参见 _doserrno、 errno、 _sys_errlist 和 _sys_nerr

说明说明

如果 stdout 或 stderr 不与输出流 (例如,在没有控制台窗口的 windows 应用程序),返回的文件说明符为 -2。在早期版本中,返回的文件说明符为 -1。此更改允许应用程序与错误区分此情况。

备注

_fileno 实例返回文件描述符当前与 stream。此实例的形式实现功能和作为宏。有关选择任何实现的信息,请参见 选择在函数和宏之间

要求

功能

必需的头

_fileno

stdio.h

有关更多兼容性信息,请参见中介绍的 兼容性

示例

// crt_fileno.c
// This program uses _fileno to obtain
// the file descriptor for some standard C streams.
//

#include <stdio.h>

int main( void )
{
   printf( "The file descriptor for stdin is %d\n", _fileno( stdin ) );
   printf( "The file descriptor for stdout is %d\n", _fileno( stdout ) );
   printf( "The file descriptor for stderr is %d\n", _fileno( stderr ) );
}
  

.NET Framework 等效项

系统:: IO:: FileStream:: 处理

请参见

参考

流I/O

_fdopen, _wfdopen

_filelength, _filelengthi64

fopen, _wfopen

freopen, _wfreopen