Fonction de bibliothèque C - Fread ()

La description

La fonction de bibliothèque C size_t fread(void *ptr, size_t size, size_t nmemb, FILE *stream) lit les données de la donnée stream dans le tableau pointé, par ptr.

Déclaration

Voici la déclaration de la fonction fread ().

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

Paramètres

  • ptr- C'est le pointeur vers un bloc de mémoire avec une taille minimale de taille * nmemb octets.

  • size - Il s'agit de la taille en octets de chaque élément à lire.

  • nmemb - C'est le nombre d'éléments, chacun avec une taille de size octets.

  • stream - Il s'agit du 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 intégral. Si ce nombre diffère du paramètre nmemb, c'est qu'une erreur s'est produite ou que la fin du fichier a été atteinte.

Exemple

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

#include <stdio.h>
#include <string.h>

int main () {
   FILE *fp;
   char c[] = "this is tutorialspoint";
   char buffer[100];

   /* Open file for both reading and writing */
   fp = fopen("file.txt", "w+");

   /* Write data to the file */
   fwrite(c, strlen(c) + 1, 1, fp);

   /* Seek to the beginning of the file */
   fseek(fp, 0, SEEK_SET);

   /* Read and display data */
   fread(buffer, strlen(c)+1, 1, fp);
   printf("%s\n", buffer);
   fclose(fp);
   
   return(0);
}

Laissez-nous compiler et exécuter le programme ci-dessus qui créera un fichier file.txtet écrivez un contenu c'est tutorialspoint . Après cela, nous utilisonsfseek() fonction pour réinitialiser le pointeur d'écriture au début du fichier et préparer le contenu du fichier qui est comme suit -

this is tutorialspoint