printf-Formatbezeichner

Aus RAD Studio
Wechseln zu: Navigation, Suche

Nach oben zu printf, wprintf



Ausgabeformatbezeichner haben die folgende Form:

% [flags] [width] [.prec] [F|N|h|l|L] type_char

Jeder Formatbezeichner beginnt mit dem Prozentzeichen (%).


Optionale Komponenten von Format-Strings

Im Folgenden sind die allgemeinen Aspekte der Ausgabeformatierung beschrieben, die von optionalen Zeichen, Bezeichnern und Modifizierern im Format-String gesteuert werden:

Komponente    Optional/Erforderlich Bedeutung

[Flags]

(Optional)

Flags können in jeder beliebigen Reihenfolge und Kombination vorhanden sein.

  • - = Richtet das Ergebnis linksbündig aus und füllt rechts mit Leerstellen auf. Ist dieses Flag nicht vorhanden, dann wird das Ergebnis rechtsbündig ausgerichtet und links mit Nullen oder Leerzeichen aufgefüllt.
  • + = Stellt dem Konvertierungsergebnis ein Vorzeichen voran (Plus (+) oder Minus (-)).
  • leer = Wenn ein Wert nicht negativ ist, beginnt die Ausgabe mit einem Leerzeichen anstelle eines Pluszeichens. Negative Werte beginnen mit einem Minuszeichen.
  • # = Gibt an, dass das Argument in eine andere Form konvertiert werden soll.
Hinweis: Ein Pluszeichen (+) hat Vorrang vor einem Leerzeichen (), wenn beide angegeben sind.

[Breite]

(Optional)

Der Breitenbezeichner legt die minimale Länge des Feldes für den Ausgabewert fest.

Zum Festlegen der Breite stehen die beiden folgenden Möglichkeiten zur Verfügung:

  • Direkt mit einem dezimalen Ziffern-String.
  • Indirekt mit einem Sternchen (*).

Wenn Sie ein Sternchen als Breitenbezeichner verwenden, legt das nächste Argument in dem Aufruf (das ein int sein muss) die minimale Breite des Ausgabefeldes fest.

Bei nicht vorhandenen oder kleinen Feldbreiten wird ein Feld nicht abgeschnitten. Wenn das Ergebnis einer Konvertierung länger als die Feldbreite ist, wird das Feld entsprechend vergrößert.

Auswirkungen auf die Ausgabebreite


n = Es werden mindestens n Zeichen ausgegeben. Wenn der Ausgabewert weniger als n Zeichen hat, wird die Ausgabe mit Leerstellen aufgefüllt (rechts, wenn das Flag angegeben ist, ansonsten links).

0n = Es werden mindestens n Zeichen ausgegeben. Wenn der Ausgabewert weniger als n Zeichen hat, wird er links mit Nullen aufgefüllt.

'*' = Die Argumentliste gibt den Breitenbezeichner an, der vor dem zu formatierenden eigentlichen Argument stehen muss.

[Genauigkeit]

(Optional)

Genauigkeitsbezeichner. Maximale Anzahl der auszugebenden Zeichen; bei Integerwerten minimale Anzahl der auszugebenden Ziffern.

[F|N|h|l|L]

(Optional)

Diese Modifizierer bestimmen, wie printf-Funktionen das nächste Eingabeargument, arg[f], interpretieren.

Präfix Formatbezeichner Festgelegter Typ

F

p s

A far pointer

N

n

Ein near-Zeiger

h

d i o u x X

A short int

l

d i o u x X

A long int

l

e E f g G

A double

L

e E f g G

A long double

ll

d i o u x X

A long long (__int64)

L (non-standard)

d i o u x X

A long long (__int64)

h

c C

Ein Einzelbyte-Zeichen

l

c C

Ein Wide-Zeichen

h

s S

Ein Einzelbyte-Zeichen-String

l

s S

Ein Wide-Zeichen-String

Diese Modifizierer wirken sich darauf aus, wie alle printf-Funktionen die Datentypen des zugehörigen Eingabearguments arg interpretieren. F und N interpretieren die Eingabevariable arg neu. Normalerweise ist das Argument für eine Konvertierung von %p, %s oder %n ein Zeiger in der Standardgröße des Speichermodells. h, l und L überschreiben die Standardgröße der numerischen Dateneingabeargumente. Weder h noch l wirken sich auf Zeigertypen (p,n) aus.

type_char

(Erforderlich)

Typzeichen

Hinweis: Alle Toolketten von RAD Studio unterstützen das Format %lld. RAD Studio empfiehlt dies anstelle von %Ld zu verwenden.
Achtung: Der neue BCC64X-Compiler unterstützt %L nicht. Verwenden Sie daher das standardkonforme %lld.

Siehe auch