Funcția fprintf () din C ++ este utilizată pentru a scrie un șir formatat în fluxul de fișiere.
fprintf () prototip
int fprintf (FILE * stream, const char * format, …);
fprintf()
Funcția scrie șirul indicat de format la fluxul de flux. Formatul șirului poate conține specificatori de format începând cu% care sunt înlocuiți cu valorile variabilelor care sunt transmise fprintf()
funcției ca argumente suplimentare.
Este definit în fișierul antet.
fprintf () Parametri
- flux: Pointer către un flux de fișiere de ieșire în care este scris conținutul.
- format: Pointer către un șir terminat nul care este scris în fluxul de fișiere. Se compune din caractere împreună cu specificatori de format opționali începând cu%.
Specificatorii de format sunt înlocuiți cu valorile variabilelor respective care urmează șirului de format.
Specificatorul de format are următoarele părți:
- Un semn de conducere%
- Semnalizări: opțional unul sau mai multe semnalizatoare care modifică comportamentul de conversie.
- -: Stânga justifică rezultatul în câmp. În mod implicit, este justificat.
- +: Semnul rezultatului este atașat la începutul valorii, chiar și pentru rezultate pozitive.
- Spațiu: dacă nu există niciun semn, un spațiu este atașat la începutul rezultatului.
- #: Se efectuează o formă alternativă de conversie.
- 0: Se folosește pentru numărul întreg și numărul cu virgulă mobilă. Zero-urile principale sunt utilizate pentru a tampona numerele în loc de spațiu.
- Lățime: o valoare opțională * sau întreagă utilizată pentru a specifica câmpul de lățime minimă.
- Precizie: un câmp opțional format dintr-un. urmat de * sau întreg sau nimic pentru a specifica precizia.
- Lungime: un modificator opțional de lungime care specifică dimensiunea argumentului.
- Specificator: un specificator de format de conversie. Specificatorii de format disponibili sunt după cum urmează:
Specificator de format Descriere % % Tipăriri c Scrie un singur personaj s Scrie un șir de caractere d sau i Convertește un număr întreg semnat în reprezentare zecimală o Convertește un număr întreg nesemnat în reprezentare octală X sau x Convertește un număr întreg nesemnat în reprezentare hexazecimală tu Convertește un număr întreg nesemnat în reprezentare zecimală F sau f Convertește numărul în virgulă mobilă în reprezentarea zecimală E sau e Convertește numărul în virgulă mobilă în notația exponentului zecimal A sau a Convertește numărul în virgulă mobilă în exponentul hexazecimal G sau g Convertește numărul în virgulă mobilă fie în notație zecimală, fie în exponentă zecimală n Returnează numărul de caractere scrise până acum de acest apel către funcție. Rezultatul este scris la valoarea indicată de argument p Scrie o secvență de caractere definită de implementare care definește un pointer. Deci, formatul general al specificatorului de format este:
%(flags)(width)(.precision)(length)specifier
- …: Alte argumente suplimentare care specifică datele de tipărit. Acestea apar într-o secvență conform specificatorului de format.
fprintf () Valoare returnată
Dacă are succes, fprintf()
funcția returnează numărul de caractere scrise. La eșec, returnează o valoare negativă.
Exemplu: Cum funcționează funcția fprintf ()
#include int main() ( FILE *fp; fp = fopen("example.txt","w"); char lang(5)(20) = ("C","C++","Java","Python","PHP"); fprintf(fp,"Top 5 programming language"); for (int i=0; i<5; i++) fprintf(fp, "%d. %s", i+1, lang(i)); fclose(fp); return 0; )
Când rulați programul, va fi creat un fișier „example.txt” (dacă nu există deja) și conține următorul șir:
Top 5 limbaj de programare 1. C 2. C ++ 3. Java 4. Python 5. PHP