_fileno
Zwraca deskryptor pliku skojarzone z strumienia.
int _fileno(
FILE *stream
);
Parametry
- stream
Wskaźnik, aby FILE struktury.
Wartość zwracana
_filenozwraca deskryptor pliku.Istnieje bez powrotu błąd.Wynik jest niezdefiniowana, jeżeli stream nie określa otwartego pliku.Jeżeli strumień jest NULL, _fileno wywołuje obsługi nieprawidłowy parametr, jak opisano w Sprawdzanie poprawności parametru.Jeśli wykonanie jest dozwolone, aby kontynuować, to funkcja zwraca wartość -1 i zestawy errno do EINVAL.
Aby uzyskać więcej informacji na temat tych i innych kodów błędów, zobacz _doserrno, errno, _sys_errlist i _sys_nerr.
[!UWAGA]
Jeśli stdout lub stderr nie jest skojarzony z strumienia wyjściowego (na przykład w aplikacji systemu Windows bez okna konsoli), deskryptor pliku, zwracany jest -2.W poprzednich wersjach deskryptor pliku zwracana była -1.Ta zmiana pozwala aplikacjom odróżnienia ten warunek błędu.
Uwagi
_fileno Rutynowych zwraca deskryptor pliku aktualnie skojarzone z stream.Ta procedura jest implementowany jako funkcja i jak makra.Aby uzyskać informacje o wybieraniu albo wykonania, zobacz Wybór między funkcjami i makra.
Wymagania
Funkcja |
Wymaganego nagłówka |
---|---|
_fileno |
<stdio.h> |
Informacji dotyczących zgodności, zobacz zgodności we wprowadzeniu.
Przykład
// 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 ) );
}
Odpowiednik w programie .NET Framework
System::IO::FileStream::HANDLE