Funktionen fwrite () i C ++ skriver et specificeret antal tegn til den givne outputstrøm.
fwrite () prototype
size_t fwrite (const ugyldig * buffer, størrelse_t størrelse, størrelse_tælling, FILE * stream);
De fwrite()
funktion skrivninger tælle antallet af objekter, der hver størrelse size bytes til den givne output stream.
Det svarer til at kalde fputc () størrelse gange for at skrive hvert objekt. Afhængig af antallet af tegn der er skrevet, øges filpositionens indikator. Den resulterende værdi af filpositionens indikator for strømmen er ubestemt, hvis der opstår en fejl under læsning af filen.
- Hvis objekterne ikke er trivielt kopierbare, er adfærden udefineret.
- Hvis størrelsen eller antallet er nul,
fwrite
returnerer et opkald til nul, og der udføres ingen anden handling.
Det er defineret i header-fil.
fwrite () Parametre
- buffer: Markør til hukommelsesblokken, hvis indhold er skrevet.
- størrelse: Størrelsen på hvert objekt i byte.
- count: Antallet af objekter, der skal læses.
- stream: Filstrømmen, som dataene skal skrives til.
fwrite () Returværdi
De fwrite()
-funktionen giver antallet af objekter læse med succes. Hvis der opstår en fejl, kan returværdien muligvis være mindre end optællingen.
Eksempel 1: Hvordan fwrite () fungerer
#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; )
Når du kører programmet, skrives indholdet af buffer til filen, og output vil være:
fwrite returnerede 1
Eksempel 2: Hvordan fwrite () fungerer, når enten optælling eller størrelse er nul
#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; )
Når du kører programmet, vil output være:
Når count = 0, returnerede fwrite 0 Når størrelse = 0, returnerede fwrite 0