C ++ printf () - C ++ szabványos könyvtár

A printf () függvény a C ++ - ban egy formázott karakterlánc írására szolgál az stdout-ra.

printf () prototípus

 int printf (const char * formátum,…);

A printf()függvény a formátum szerint mutatott karakterláncot az stdout-ba írja. A karaktersorozat formátuma tartalmazhat% -al kezdődő formátummeghatározókat, amelyek helyettesítik azokat a változók értékeit, amelyeket printf()további argumentumként továbbítanak a függvénynek.

A fejlécfájlban van meghatározva.

printf () Paraméterek

  • formátum: Mutató egy nullával végződő karakterláncra, amelyet a fájlfolyamba írnak. Karakterekből áll, és opcionális formátum-specifikátorokkal kezdődik, amelyek% -kal kezdődnek.

    A formátum-specifikátorokat a megfelelő változók értékei helyettesítik, amelyek a formátum-karakterláncot követik.

    A formátummeghatározó a következő részekkel rendelkezik:

    • Vezető% jel
    • Jelölések: Opcionálisan egy vagy több jelölés, amely módosítja a konverzió viselkedését.
      • -: Bal igazolja az eredményt a mezőn belül. Alapértelmezés szerint helyesen indokolt.
      • +: Az eredmény jele az érték elejéhez van kötve, még pozitív eredmények esetén is.
      • Szóköz: Ha nincs előjel, akkor az eredmény elejéhez szóköz tartozik.
      • #: A konverzió alternatív formáját hajtják végre.
      • 0: Egész számra és lebegőpontos számra használják. A nullák a szóköz helyett a számok kitöltésére szolgálnak.
    • Szélesség: Opcionális * vagy egész érték, amelyet a minimális szélesség mező megadásához használnak.
    • Pontosság: Választható mező, amely a. * vagy egész szám, vagy semmi a pontosság megadásához.
    • Hossz: Opcionális hosszmódosító, amely megadja az argumentum méretét.
    • Specifier: Konverziós formátum-specifikáló. A rendelkezésre álló formátum-meghatározók a következők:
      Formátummeghatározó Leírás
      % Nyomat%
      c Egyetlen karaktert ír
      s Karakterláncot ír
      d vagy i Az aláírt egész számot decimális ábrázolássá alakítja
      o Az előjel nélküli egész számot oktális ábrázolássá alakítja
      X vagy x Aláíratlan egész számot hexadecimális ábrázolássá alakítja
      u Az aláíratlan egész számot decimális ábrázolássá alakítja
      F vagy f A lebegőpontos számot tizedesre konvertálja
      E vagy e A lebegőpontos számot decimális exponens jelöléssé alakítja
      A vagy a A lebegőpontos számot hexadecimális kitevővé konvertálja
      G vagy g A lebegőpontos számot decimális vagy decimális exponens jelöléssé alakítja
      n Visszaadja a függvénynek a hívás által eddig írt karakterek számát. Az eredményt arra az értékre írják, amelyre az argumentum rámutat
      o Ír egy megvalósítás által definiált karaktersorozatot, amely meghatároz egy mutatót.

      Tehát a formátummeghatározó általános formátuma: %(flags)(width)(.precision)(length)specifier

  • …: Egyéb további érvek, amelyek meghatározzák a kinyomtatandó adatokat. A formátummeghatározó szerint sorrendben fordulnak elő.

printf () Visszatérési érték

Sikeres eredmény esetén a printf()függvény visszaadja az írt karakterek számát. Meghibásodás esetén negatív értéket ad vissza.

1. példa: Hogyan működik a printf () függvény

 #include int main() ( int x = 5; char my_name() = "Lincoln"; printf("x = %d ", x); printf("My name is %s ", my_name); return 0; )

A program futtatásakor a kimenet a következő lesz:

 x = 5 A nevem Lincoln

2. példa: További példák a printf () -re

 #include int main() ( char ch = 'a'; float a = 5.0, b = 3.0; int x = 10; printf("%.3f / %.3f = %.3f ", a,b,a/b); printf("Setting width %*c ",5,ch); printf("Octal equivalent of %d is %o ",x,x); return 0; )

A program futtatásakor a kimenet a következő lesz:

 5.000 / 3.000 = 1.667 Beállítási szélesség a 10 oktális egyenértéke 12

érdekes cikkek...