_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 Fehler werden.Das Ergebnis ist nicht definiert, wenn keine stream geöffnete Datei angibt.Wenn Stream NULList, ruft der ungültige Parameter fürfileno _auf, wie in Parametervalidierungbeschrieben.Wenn die Ausführung zulässig ist, um fortzufahren, gibt die Funktion -1 zurück und legt ihn fest. EINVALzu errno
Weitere Informationen über diese und andere Fehlercodes finden Sie unter _doserrno, errno, _sys_errlist und _sys_nerr.
Hinweis |
---|
Wenn stdout oder stderr nicht mit einem Ausgabedatenstrom (z. B. in einer Windows-Anwendung ohne ein Konsolenfenster) zugeordnet ist, ist der zurückgegebene Dateideskriptor -2.In früheren Versionen war der zurückgegebene Dateideskriptor -1.Diese Änderungen können Anwendungen diese Bedingung eines Fehlers zu unterscheiden. |
Hinweise
Die _fileno Routine gibt den Dateideskriptor zurück, die derzeit mit streamzugeordnet ist.Diese Routine wird als Funktion und als Makro implementiert.Weitere Informationen über das Auswählen einer Implementierung finden Sie unter Grundlegende Funktionen und Makros auswählen.
Anforderungen
Funktion |
Erforderlicher Header |
---|---|
_fileno |
<stdio.h> |
Weitere Informationen finden Sie unter Kompatibilität 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::EA::FileStream::Handle