C ++ fwrite () - Bibliothèque standard C ++

La fonction fwrite () en C ++ écrit un nombre spécifié de caractères dans le flux de sortie donné.

prototype fwrite ()

 size_t fwrite (const void * buffer, size_t size, size_t count, FILE * stream);

La fwrite()fonction écrit le nombre d'objets, chacun de taille size octets dans le flux de sortie donné.

Cela revient à appeler fputc () size times pour écrire chaque objet. En fonction du nombre de caractères écrits, l'indicateur de position du fichier est incrémenté. La valeur résultante de l'indicateur de position de fichier pour le flux est indéterminée si une erreur se produit lors de la lecture du fichier.

  • Si les objets ne sont pas facilement copiables, le comportement n'est pas défini.
  • Si la taille ou le nombre est égal à zéro, un appel à fwriterenvoie zéro et aucune autre action n'est effectuée.

Il est défini dans le fichier d'en-tête.

Paramètres de fwrite ()

  • buffer: pointeur vers le bloc de mémoire dont le contenu est écrit.
  • size: taille de chaque objet en octets.
  • count: le nombre d'objets à lire.
  • stream: le flux de fichiers dans lequel écrire les données.

fwrite () Valeur de retour

La fwrite()fonction renvoie le nombre d'objets lus avec succès. Si une erreur se produit, la valeur de retour peut être inférieure à count.

Exemple 1: Fonctionnement de la fonction fwrite ()

 #include #include using namespace std; int main() ( int retVal; FILE *fp; char buffer() = "Writing to a file using fwrite."; fp = fopen("data.txt","w"); retVal = fwrite(buffer,sizeof(buffer),1,fp); cout << "fwrite returned " << retVal; return 0; )

Lorsque vous exécutez le programme, le contenu du tampon sera écrit dans le fichier et la sortie sera:

 fwrite a renvoyé 1

Exemple 2: Fonctionnement de la fonction fwrite () lorsque count ou size est égal à zéro

 #include #include using namespace std; int main() ( int retVal; FILE *fp; char buffer() = "Writing to a file using fwrite."; fp = fopen("myfile.txt","w"); retVal = fwrite(buffer,sizeof(buffer),0,fp); cout << "When count = 0, fwrite returned " << retVal << endl; retVal = fwrite(buffer,0,1,fp); cout << "When size = 0, fwrite returned " << retVal << endl; return 0; )

Lorsque vous exécutez le programme, la sortie sera:

 Lorsque count = 0, fwrite a renvoyé 0 Lorsque size = 0, fwrite a renvoyé 0

Articles intéressants...