C ++ fwrite () - C ++ standardna biblioteka

Funkcija fwrite () u C ++-u upisuje određeni broj znakova u zadani izlazni tok.

prototip fwrite ()

 size_t fwrite (const void * međuspremnik, size_t size, size_t count, FILE * stream);

U fwrite()piše funkcija računati broj objekata, svaki veličine veličine bajtova na određenom izlaznom toku.

Slično je pozivanju veličine veličine fputc () za pisanje svakog objekta. Prema broju napisanih znakova, indikator položaja datoteke se povećava. Rezultirajuća vrijednost pokazatelja položaja datoteke za tok je neodređena ako se tijekom čitanja datoteke dogodi bilo kakva pogreška.

  • Ako se objekti ne mogu trivijalno kopirati, ponašanje je nedefinirano.
  • Ako je veličina ili broj nula, poziv na fwritevratit će nulu i neće se izvršiti nikakva druga radnja.

Definirano je u datoteci zaglavlja.

fwrite () parametri

  • međuspremnik: pokazivač na blok memorije čiji je sadržaj zapisan.
  • veličina: veličina svakog objekta u bajtovima.
  • count: Broj objekata za čitanje.
  • stream: tok datoteke u koji se upisuju podaci.

fwrite () Povratna vrijednost

Na fwrite()funkcija vraća broj predmeta uspješno čitanje. Ako se dogodi pogreška, povratna vrijednost može biti manja od broja.

Primjer 1: Kako funkcionira funkcija 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; )

Kada pokrenete program, sadržaj međuspremnika zapisat će se u datoteku, a izlaz će biti:

 fwrite vratio 1

Primjer 2: Kako funkcionira funkcija fwrite () kada je broj ili veličina jednaka nuli

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

Kada pokrenete program, izlaz će biti:

 Kada je count = 0, fwrite je vratio 0 Kada je veličina = 0, fwrite je vratio 0

Zanimljivi članci...