Funkcija fwrite () v jeziku C ++ zapiše določeno število znakov v dani izhodni tok.
prototip fwrite ()
size_t fwrite (const void * medpomnilnik, size_t size, size_t count, FILE * tok);
V fwrite()
funkcijski piše prešteti število predmetov, vsaka velikosti velikosti bajti na dano izhodnih tokov.
Za pisanje vsakega predmeta je podobno klicanju velikosti fputc (). Glede na število napisanih znakov se kazalnik položaja datoteke poveča. Nastala vrednost kazalnika položaja datoteke za tok je nedoločena, če med branjem datoteke pride do napake.
- Če predmetov ni mogoče trivialno kopirati, vedenje ni določeno.
- Če je velikost ali štetje nič, bo klic
fwrite
vrnil nič in nobeno drugo dejanje ne bo izvedeno.
Določen je v datoteki glave.
fwrite () Parametri
- medpomnilnik: Kazalec na blok pomnilnika, katerega vsebina je zapisana.
- velikost: velikost vsakega predmeta v bajtih.
- count: število predmetov, ki jih je treba prebrati.
- tok: tok datoteke, v katerega želite zapisati podatke.
fwrite () Vrnjena vrednost
Se fwrite()
vrne število predmetov uspešno bere. Če pride do napake, je lahko vrnjena vrednost manjša od štetja.
Primer 1: Kako deluje 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; )
Ko zaženete program, se vsebina vmesnega pomnilnika zapiše v datoteko, rezultat pa bo:
fwrite vrnil 1
Primer 2: Kako deluje funkcija fwrite (), kadar je število ali velikost enaka nič
#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; )
Ko zaženete program, bo rezultat:
Ko je število = 0, je fwrite vrnil 0 Ko je velikost = 0, je fwrite vrnil 0