Show Menu

C - printf/scanf Cheat Sheet by

C printf/scanf syntax
syntax     c     printf     output     input     scanf     input-output     io     i-o

genereller Aufbau

Para­meter
Besc­hre­ibung
* NUR scanf
opti­onal, Zuweisung zum korres­pon­die­renden Zeiger unterd­rücken
Flags NUR printf
opti­onal, bestimmt über numerische Vorzei­chen, Dezima­lpu­nkte, link/r­ech­tsb­ünd­igkeit und anderes
Breite
opti­onal, minimal auszug­ebende Zeiche­nzahl. Der Rest wird mit Leerze­ichen oder Nullen aufgef­üllt.
F/N NUR scanf
opti­onal, Größe des Adress­-Pa­ram­eters
.Präzision
opti­onal, Angabe, wie präzise die Ausgabe sein soll
F/N/hh­/h/­l/ll/L
opti­onal, Angabe der Größe des Parameters
Typ
obli­gat­ori­sch, Angabe des Typs der auszug­ebenden Variablen
printf:
% [Flags] [Breite] [.Präz­ision] [F/N/...] Typ

scanf:
% [*] [Breite] [F|N][­hh|­h|l­|ll|L] Typ
KEINE Leerze­ichen! Sie dienen hier nur der Übersi­cht­lic­hke­it!

Unte­rsc­hiede der Präzision je nach Datentyp
Zeich­enk­etten: maximal auszug­ebende Zeichen
ganze Zahlen: Minima­lzahl von Zeichen
Fließ­kom­maz­ahlen: Maxima­lzahl der Nachko­mma­stellen

Besond­erh­eiten von scanf

Es dürfen nur Platzh­alter und Leerze­ichen verwendet werden
Anstatt %s kann auch %[Such­zei­chen] genutzt werden.
Beispiel:
%[abcd] erwartet nur Eingaben, die aus den Zeichen a, b, c, d bestehen. Bei allen anderen wird die Eingabe beendet.
Wird als erstes Suchze­ichen das Carret (^) verwendet, wird die Eingabe beendet, wenn eines der Suchze­ichen eingegeben wird.
Beis­piel:
%[^abcd] erwartet nur Eingaben, die nicht aus den Zeichen a, b, c, d bestehen. Die Eingabe wird auch nicht bei weißen Leerze­ichen beendet.
Anstelle von Zeiche­nau­fzä­hlungen können auch Bereiche angegeben werden.
Beispiel:
% [01234­56789] ist äquivalent mit %[0-9]
Bei manchen Compilern kann bzw. muss bei der Format­angabe das s angehangen werden.
 

Flags

Flag
Effekt
-
linksb­ündige Ausgabe
+
numerische Ausgabe immer mit Vorzeichen
<Leerzeichen>
Positiven Zahlen wird ein Leerze­ichen voran gestellt
#
Altern­ative Darste­llung
Alte­rnative Darste­llu­ngen:
o: Es wird eine 0 vorang­est­ellt.
x/X: es wird ein 0x bzw. 0X vorang­est­ellt.
e/E/f: Es wird ein Dezima­lpunkt ausgeg­eben, auch wenn es keine Nachko­mma­stellen gibt.
g/G: wie bei e/E, außerdem werden folgende Nullen nicht unterd­rückt.

# ist nicht erlaubt bei Typ d/i/u/­c/s/p
+ ist nicht erlaubt bei Typ c/s

Breite

Breite
Ausg­abe
n
(n = Dezima­lzahl) - Es werden mind. n Zeichen ausgegeben und notfalls führende Leerze­ichen genutzt.
0n
(Dezim­alzahl mit vorang­est­ellter 0) - Es werden mind. n Zeichen ausgegeben und mit Nullen mit führenden Nullen aufgef­üllt.
*n
Breite variabel bestimmbar
Beispiel *n
print­f("%­*d­\n", Breite, Wert); //Breite muss int sein!

Größen­angaben

Größ­ena­ngabe
Date­ntyp
hh3
char
h1
short
l
long
ll3
long long
L
long double
F4
Far (Zeiger)
N4
Near (Zeiger)
1: erst seit C89
2: erst seit C95
3: erst seit C99
4: Nur in 16-Bit Compilern
Beso­nde­rhe­iten:
Bei cl ist der Datentyp wint_t2
Bei sl ist der Datentyp wchar_t* 3
 

Präzision

Präzision
Ausg­abe
.0
Standa­rda­usgabe - keine Ausgabe von Dezima­lpunkt und Nachko­mma­stellen für Fließk­omm­azahlen
.n
n = Dezima­lzahl
.*
variable Präzision
Beispiel .*
print­f("%­.­f\n­", Breite, Präzision, Wert); //Breite und Präzision müssen int sein!

Unte­rsc­hiede je nach Datent­yp:
gnaze Zahlen: Mindes­tanzahl von auszug­ebenden Ziffern
Flie­ßko­mma­zahlen (e/E/f­/F): Ausgabe von n Nachko­mma­stellen
Flie­ßko­mma­zahlen (g/G/a­/A): Ausgabe von n Ziffern
Zeic­hen­ket­ten: maximale Anzahl von auszug­ebenden Zeichen

Typ

Typ
Ausg­abe
d / i
dezimaler Integer
u
vorzei­che­nloser dezimaler Integer
o
vorzei­che­nloser oktaler Integer
x / X
vorzei­che­nloser hexade­zimaler Integer
f / F
dezimale Fließk­omm­azahl
e / E
dezimale Fließk­omm­azahl in Expone­nte­nda­rst­ellung
g / G
wie e/E, aber in Kurzform
c
Zeichen
s
Zeiche­nkette bis zu einem Nullze­ichen oder dem Erreichen der Präzision
p
Zeiger­adresse

Download the C - printf/scanf Cheat Sheet

2 Pages
//media.cheatography.com/storage/thumb/timsch_c-printf-scanf.750.jpg

PDF (recommended)

Alternative Downloads

Share This Cheat Sheet!

 

Comments

No comments yet. Add yours below!

Add a Comment

Your Comment

Please enter your name.

    Please enter your email address

      Please enter your Comment.

          Related Cheat Sheets

          Monopolies Cheat Sheet
          C- Funktionen Cheat Sheet
          C Reference Cheat Sheet

          More Cheat Sheets by TimSch

          C - Kontrollstrukturen Cheat Sheet