C ++ fwrite () - štandardná knižnica C ++

Funkcia fwrite () v C ++ zapisuje zadaný počet znakov do daného výstupného toku.

prototyp fwrite ()

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

Tieto fwrite()funkcie zapíše počítať počet objektov, každý o veľkosti veľkosti bytov pre daný výstupný prúd.

Je to podobné ako volanie časov veľkosti fputc () na zápis každého objektu. Podľa počtu napísaných znakov sa indikátor polohy súboru zvyšuje. Výsledná hodnota indikátora polohy súboru pre prúd je neurčitá, ak sa pri načítaní súboru vyskytne chyba.

  • Ak objekty nie sú triviálne kopírovateľné, správanie nie je definované.
  • Ak je veľkosť alebo počet nula, volanie funkcie fwritevráti nulu a nevykoná sa žiadna ďalšia akcia.

Je definované v hlavičkovom súbore.

fwrite () parametre

  • buffer: Ukazovateľ na blok pamäte, ktorého obsah je zapísaný.
  • size: Veľkosť každého objektu v bajtoch.
  • count: Počet objektov na čítanie.
  • stream: Stream súborov, do ktorého sa majú údaje zapisovať.

fwrite () Vrátená hodnota

Tieto fwrite()funkcie vráti počet objektov úspešne prečítaný. Ak sa vyskytne chyba, návratová hodnota môže byť menšia ako počet.

Príklad 1: Ako funguje funkcia 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; )

Po spustení programu sa obsah medzipamäte zapíše do súboru a výstup bude:

 fwrite vrátil 1

Príklad 2: Ako funguje funkcia fwrite (), keď je počet alebo veľkosť nulová

 #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; )

Po spustení programu bude výstup:

 Keď počet = 0, fwrite vrátil 0 Keď veľkosť = 0, fwrite vrátil 0

Zaujímavé články...