AccueilđŸ‡«đŸ‡·Chercher

fread

fread est une fonction qui lit l'entrĂ©e de la mĂ©moire tampon d'un fichier. Elle est incluse dans l'en-tĂȘte stdio.h de la bibliothĂšque standard du C.

Syntaxe

size_t fread (void * restrict ptr, size_t size, size_t nmemb, FILE * restrict stream)

La fonction fread copie nmemb articles de donnĂ©es de taille size depuis l'entrĂ©e stream dans un tableau pointĂ© par ptr. Un article de donnĂ©es est une sĂ©quence de bytes (pas nĂ©cessairement terminĂ©e par un byte null) de longueur size. fread s'arrĂȘte lorsque nmemb articles ont Ă©tĂ© lus, que la fin du fichier a Ă©tĂ© atteinte, ou qu'une erreur s'est produite. En renvoyant les donnĂ©es, fread Ă©tablit un pointeur de fichier dans le flux pointant vers le byte aprĂšs le dernier byte lu. Le contenu de stream reste inchangĂ©. La fonction fread retourne le nombre d'articles qui ont Ă©tĂ© lus. Si nmemb est Ă©gal Ă  zĂ©ro, aucune action n'est rĂ©alisĂ©e et la fonction renvoie 0.

Diagnostics

La fonction peut Ă©chouer avec les codes d'erreur suivants :

  • EAGAIN - Ne peut pas lire le flux d'entrĂ©e immĂ©diatement sans bloquer le processus, et le drapeau O_NONBLOCK est fixĂ© pour le descripteur de fichier associĂ© avec le flux.
  • EBADF - Le descripteur de fichier ouvert pour la lecture n'est pas valide.
  • EINTR - L'opĂ©ration de lecture a Ă©tĂ© arrĂȘtĂ©e par un signal avant qu'aucune donnĂ©e n'ait pu ĂȘtre lue.
  • EIO - Impossible de lire Ă  partir du terminal de contrĂŽle. Ceci se produit lorsque le processus est lancĂ© en arriĂšre-plan et que sa tentative de lecture depuis son terminal de contrĂŽle Ă©choue, que ce soit parce que le groupe du processus est orphelin, ou parce que le processus ignore ou bloque le signal SIGTTIN.
  • ENOMEM - Espace de stockage disponible insuffisant.
  • ENXIO - Tentative de lecture depuis un pĂ©riphĂ©rique inexistant, ou dont les capacitĂ©s sont dĂ©passĂ©es.

Références

Cet article est issu de wikipedia. Text licence: CC BY-SA 4.0, Des conditions supplĂ©mentaires peuvent s’appliquer aux fichiers multimĂ©dias.