Fonctions de la bibliothèque C -fread()

Bibliothèque standard C - <stdio.h>

Description

Fonctions de la bibliothèque Csize_t fread(void *ptr, size_t size, size_t nmemb, FILE *stream)À partir du flux donnéstreamLire les données dansptrDans le tableau pointé.

Déclaration

Ci-dessous se trouve la déclaration de la fonction fread().

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

Paramètre

  • ptr-- Ceci est un pointeur vers un bloc de mémoire d'une taille minimalesize*nmembpointeur vers un bloc de mémoire d'octets.
  • size-- Il s'agit de la taille en octets de chaque élément à lire.
  • nmemb-- Il s'agit du nombre d'éléments, chacun de taille size octets.
  • stream-- Il s'agit d'un pointeur vers un objet FILE qui spécifie un flux d'entrée.

Valeur de retour

Le nombre total d'éléments lus avec succès est renvoyé sous la forme d'un objet size_t, qui est un type de données entier. Si le total diffère du paramètre nmemb, une erreur a pu se produire ou la fin du fichier a été atteinte.

Exemple

L'exemple suivant illustre l'utilisation de la fonction fread().

Exemple

#include <stdio.h>
#include <string.h>
 
int main()
{
   FILE *fp;
   char c[] = "This is example";
   char buffer[20];
 
   /* Ouvrir un fichier en lecture et en écriture */
   fp = fopen("file.txt", "w+");
 
   /* Écrire des données dans le fichier */
   fwrite(c, strlen(c) + 1, 1, fp);
 
   /* Trouver le début du fichier */
   fseek(fp, 0, SEEK_SET);
 
   /* Lire et afficher les données */
   fread(buffer, strlen(c)+1, 1, fp);
   printf("%s\n", buffer);
   fclose(fp);
   
   return(0);
}

Compilons et exécutons le programme ci-dessus, qui créera un fichierfile.txt, puis écrivons le contenuThis is example. Ensuite, nous utilisonsfseek()Fonction pour réinitialiser le pointeur d'écriture au début du fichier, le contenu du fichier est le suivant :

This is example

Bibliothèque standard C - <stdio.h>

autres extensions