_fileno
Obtient le descripteur de fichier associé à un flux.
int _fileno(
FILE *stream
);
Paramètres
- stream
Pointeur vers la structure d' FILE .
Valeur de retour
_fileno retourne le descripteur de fichier.Il n'existe aucun retour d'erreur.Le résultat est pas défini si stream ne spécifie pas un fichier ouvert.Si le flux est NULL, _fileno appelle le gestionnaire de paramètre non valide, comme décrit dans Validation des paramètres.Si est autorisé à l'exécution de se poursuivre, le retour de cette fonction -1 et définit errno à EINVAL.
Pour plus d'informations sur ces éléments et d'autres codes d'erreur, consultez _doserrno, errno, _sys_errlist, et _sys_nerr.
[!REMARQUE]
Si stdout ou stderr n'est pas associé à un flux de sortie (par exemple, dans une application Windows sans fenêtre de console), le descripteur de fichier retourné est -2.Dans les versions antérieures, le descripteur de fichier retourné était -1.Cette modification permet aux applications de distinguer cette condition d'erreur.
Notes
La routine d' _fileno retourne le descripteur de fichier actuellement associé à stream.Cette routine est implémentée en tant que fonction et en tant que macro.Pour plus d'informations sur choisir d'implémentation, consultez Choix entre des fonctions et des macros.
Configuration requise
Fonction |
en-tête requis |
---|---|
_fileno |
<stdio.h> |
Pour plus d'informations de compatibilité, consultez compatibilité dans l'introduction.
Exemple
// 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 ) );
}
Équivalent .NET Framework
System : : E/S : : FileStream : : handle