_fileno
Ruft den Dateideskriptor ab, der einem Stream zugeordnet ist.
int _fileno(
FILE *stream
);
Parameter
- stream
Zeiger auf die FILE-Struktur.
Rückgabewert
_fileno gibt den Dateideskriptor zurück. Es gibt keine Fehlerrückgabe. Das Ergebnis ist nicht, wenn keine stream geöffnete Datei angibt. Wenn Stream NULL ist, ruft _fileno den ungültigen Parameterhandler auf, wie in Parametervalidierung beschrieben. Wenn die Ausführung zulässig ist, um fortzufahren, legt gibt diese Funktion -1 und errno auf EINVAL fest.
Weitere Informationen zu diesen und anderen Fehlercodes finden Sie unter _doserrno, errno, _sys_errlist und _sys_nerr.
Hinweis
Wenn stdout oder stderr nicht mit einem Ausgabestream, (beispielsweise in einer Windows-basierten Anwendung ohne ein Konsolenfenster) zugeordnet ist, ist der zurückgegebene Dateideskriptor -2.In früheren Versionen hieß der zurückgegebene Dateideskriptor -1.Diese Änderung ermöglicht Anwendungen, diese Bedingung von einem Fehler zu unterscheiden.
Hinweise
Die Routine _fileno gibt den Dateideskriptor zurück, der nur mit stream zugeordnet ist. Diese Routine wird als Funktion und als Makro implementiert. Weitere Informationen zum Auswählen jeder Implementierung, finden Sie unter Auswählen zwischen Funktionen und Makros.
Anforderungen
Funktion |
Erforderlicher Header |
---|---|
_fileno |
<stdio.h> |
Weitere Informationen zur Kompatibilität finden Sie unter Kompatibilität in der Einführung.
Beispiel
// 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-Entsprechung
System::IO::FileStream::Handle