_fileno
Obtener el descriptor de archivo asociado a un flujo
int _fileno(
FILE *stream
);
Parámetros
- stream
Puntero a la estructura de FILE.
Valor devuelto
_fileno devuelve descriptor de archivo. No se devuelve ningún error. El resultado es indefinido si stream no especifica un archivo abierto. Si la secuencia está NULL, _fileno invoca el controlador no válido de parámetro, tal y como se describe en Validación de parámetros. Si la ejecución puede continuar, esta función devuelve -1 y establece errno a EINVAL.
Para obtener más información sobre estos y otros códigos error, vea _doserrno, errno, _sys_errlist y _sys_nerr.
Nota
Si stdout o stderr no está asociado a una secuencia de salida (por ejemplo, en una aplicación para Windows sin una ventana de consola), descriptor de archivo devuelto es -2.En versiones anteriores, descriptor de archivo devuelto es -1.Este cambio permite a las aplicaciones para diferenciar esta condición de un error.
Comentarios
La rutina de _fileno devuelve descriptor de archivo asociado actualmente a stream. Esta rutina se implementa como una función como macro. Para obtener información sobre cómo elegir cualquier implementación, vea Elegir las funciones y macros de Entre.
Requisitos
Función |
Encabezado necesario |
---|---|
_fileno |
<stdio.h> |
Para obtener más información de compatibilidad, vea Compatibilidad en la Introducción.
Ejemplo
// 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 ) );
}
Equivalente en .NET Framework
System::IO::FileStream::Handle