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

Funkcia fprintf () v C ++ sa používa na zápis formátovaného reťazca do toku súborov.

prototyp fprintf ()

 int fprintf (FILE * stream, const char * formát, …);

fprintf()Funkcia zapíše reťazec odkazuje formátu do prúdu potoka. Formát reťazca môže obsahovať špecifikátory formátu začínajúce na%, ktoré sú nahradené hodnotami premenných, ktoré sú fprintf()funkcii odovzdané ako ďalšie argumenty.

Je definované v hlavičkovom súbore.

fprintf () parametre

  • prúd: Ukazovateľ na prúd výstupného súboru, do ktorého sa zapisuje obsah.
  • formát: Ukazovateľ na reťazec s nulovým zakončením, ktorý sa zapíše do toku súborov. Skladá sa zo znakov spolu s voliteľnými špecifikátormi formátu začínajúcich na%.

    Špecifikátory formátu sú nahradené hodnotami príslušných premenných, ktoré nasledujú za formátovacím reťazcom.

    Špecifikátor formátu má tieto časti:

    • Vedúci znak%
    • Príznaky: Voliteľný jeden alebo viac príznakov, ktoré upravujú správanie pri konverzii.
      • -: Zarovnanie doľava k výsledku v rámci poľa. Štandardne je to zarovnané doprava.
      • +: Znamienko výsledku sa pripája na začiatok hodnoty, a to aj v prípade pozitívnych výsledkov.
      • Medzera: Ak nie je žiadny znak, na začiatok výsledku sa pripojí medzera.
      • #: Vykoná sa alternatívna forma konverzie.
      • 0: Používa sa na celé číslo a číslo s pohyblivou rádovou čiarkou. Na vyplnenie čísel namiesto medzery sa používajú úvodné nuly.
    • Šírka: Voliteľná * alebo celočíselná hodnota používaná na zadanie poľa minimálnej šírky.
    • Presnosť: Nepovinné pole pozostávajúce z a. za ktorými nasleduje * alebo celé číslo alebo nič, aby sa určila presnosť.
    • Dĺžka: Voliteľný modifikátor dĺžky, ktorý určuje veľkosť argumentu.
    • Špecifikátor: Špecifikátor formátu prevodu. Dostupné špecifikátory formátu sú:
      Špecifikátor formátu Popis
      % Vytlačí%
      c Píše jeden znak
      s Zapíše reťazec znakov
      d alebo i Skonvertuje celé číslo so znamienkom na desatinné miesto
      o Skonvertuje celé číslo bez znamienka na osmičkovú reprezentáciu
      X alebo x Skonvertuje celé číslo bez znamienka na hexadecimálne vyjadrenie
      u Skonvertuje celé číslo bez znamienka na desatinné miesto
      F alebo f Prevedie číslo s pohyblivou rádovou čiarkou na desatinné miesto
      E alebo e Skonvertuje číslo s pohyblivou desatinnou čiarkou na desatinný zápis exponentu
      A alebo a Prevedie číslo s pohyblivou rádovou čiarkou na hexadecimálny exponent
      G alebo g Prevedie číslo s pohyblivou rádovou čiarkou na desatinný alebo desatinný zápis exponentu
      n Vráti počet znakov doteraz napísaných týmto volaním funkcie. Výsledok sa zapíše na hodnotu, na ktorú poukazuje argument
      p Zapíše postupnosť znakov definujúcich implementáciu, ktorá definuje ukazovateľ.

      Všeobecný formát špecifikátora formátu je teda: %(flags)(width)(.precision)(length)specifier

  • …: Ďalšie ďalšie argumenty určujúce údaje, ktoré sa majú vytlačiť. Vyskytujú sa v poradí podľa špecifikátora formátu.

fprintf () Vrátiť hodnotu

Ak je úspešná, fprintf()funkcia vráti počet napísaných znakov. Pri zlyhaní vráti zápornú hodnotu.

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

Po spustení programu sa vytvorí súbor „example.txt“ (ak ešte neexistuje), ktorý obsahuje nasledujúci reťazec:

 Top 5 programovacích jazykov 1. C 2. C ++ 3. Java 4. Python 5. PHP

Zaujímavé články...