(0) exportieren Drucken
Alle erweitern
CAB
Uhr
EOF
Erweitern Minimieren
Dieser Artikel wurde maschinell übersetzt. Bewegen Sie den Mauszeiger über die Sätze im Artikel, um den Originaltext anzuzeigen. Weitere Informationen
Übersetzung
Original

printf-Typ-Feld-Zeichen

In einer Formatangabe ist das type Zeichen ein Konvertierungsspezifizierer, der angibt, ob das entsprechende Argument als Zeichen, Zeichenfolge, Zeiger, ganze Zahl oder Gleitkommazahl interpretiert werden soll. Das type Zeichen ist das einzige erforderliche Formatangabenfeld, und erscheint nach allen optionalen Feldern.

Die Argumente, die der Formatzeichenfolge folgen, werden nach dem entsprechenden type Zeichen und dem optionalen Präfix Größe interpretiert. Konvertierungen für Zeichentypen char und wchar_t werden durch c oder C angegeben, und Einzelbyte- und Multibyte- oder Breitzeichen-Zeichenfolgen werden angegeben, indem s oder S, je nach zu benötigter Formatierungsfunktion, angegeben werden. Zeichen und Zeichenfolgenargumente, die angegeben werden, indem c verwendet und s als char und char* durch printf Familienfunktionen interpretiert werden oder als wchar_t und wchar_t* durch wprintf Familienfunktionen. Zeichen und Zeichenfolgenargumente, die angegeben werden, indem C verwendet und S als wchar_t und wchar_t* durch printf Familienfunktionen interpretiert werden oder als char und char* durch wprintf Familienfunktionen.

Integer-Typen wie short, int, long, long long und ihre unsigned Varianten, werden durch d, i, o, u, x und X angeben. Gleitkommatypen wie float, double und long double, werden durch a, A, e, E, f, g und G angegeben. Standardmäßig, sofern sie nicht durch ein size Feldlängenpräfix geändert werden, werden ganzzahlige Argumente zu int-Typ umgewandelt, und Gleitkommaargumente werden zu double umgewandelt. Bei 64-Bit-Systemen ist int ein 32-Bit-Wert; Daher werden 64-Bit-Ganzzahlen abgeschnitten, wenn sie für Ausgabe formatiert werden, es sei denn, das size Präfix ll oder I64 wird verwendet. Durch p angegebene Zeigertypen verwenden die Standardlänge der Plattform.

Hinweis Hinweis

C, S und Z-Typzeichen und das Verhalten der c und s-Typzeichen, wenn sie mit den printf und wprintf-Funktionen verwendet werden, Microsoft-Erweiterungen sind und ANSI nicht kompatibel sind. Visual C++ unterstützt nicht das F-Typzeichen.

printf-Typ-Feld-Zeichen

Typzeichen

Argument

Ausgabeformat

c

Zeichen

Bei Verwendung mit printf gibt es ein Einzelbytezeichen an; Wenn Sie mit die Funktion mit wprintf verwenden, gibt es ein Breitzeichen an.

C

Zeichen

Wenn Sie mit printf verwendet werden, funktioniert, gibt ein Breitzeichen an; Wenn Sie mit wprintf verwendet werden, funktioniert, gibt ein nebeneinander an.

d

Integer (Ganze Zahl)

Dezimale ganze Zahl mit Vorzeichen.

i

Integer (Ganze Zahl)

Dezimale ganze Zahl mit Vorzeichen.

o

Integer (Ganze Zahl)

Oktale ganze Zahl ohne Vorzeichen.

u

Integer (Ganze Zahl)

Dezimale ganze Zahl ohne Vorzeichen.

x

Integer (Ganze Zahl)

Hexadezimale ganze Zahl ohne Vorzeichen; verwendet "ABCDEF".

X

Integer (Ganze Zahl)

Hexadezimale ganze Zahl ohne Vorzeichen; verwendet "ABCDEF".

e

Gleitkomma

Wert mit Vorzeichen der Form [-]d.dddd e [Vorzeichen]dd[d], wobei d eine Dezimalziffer ist, dddd steht für eine oder mehrere Dezimalstellen, dd[d] hat zwei oder drei Dezimalstellen abhängig vom Ausgabeformat, der Größe des Exponenten, und Vorzeichen ist + oder -.

E

Gleitkomma

Entspricht dem e-Format, außer dass E statt e den Exponenten einleitet.

f

Gleitkomma

Wert mit Vorzeichen der Form [-]dddd.dddd, wobei dddd für eine oder mehrere Dezimalziffern steht. Die Anzahl der Ziffern vor dem Dezimaltrennzeichen ist abhängig von der Größe der Zahl, und die Anzahl der Ziffern nach dem Dezimaltrennzeichen ist abhängig von der angeforderten Genauigkeit.

g

Gleitkomma

Werte mit Vorzeichen werden im f oder in e-Format angezeigt, je nach dem welches für den angegebenen Wert und die Genauigkeit kompakter ist. Das e Format wird nur verwendet, wenn der Wert des Exponenten kleiner als ist –4 oder größer gleich dem precision-Argument ist. Nachfolgende Nullen werden abgeschnitten, und das Dezimaltrennzeichen wird nur angezeigt, wenn eine oder mehrere Ziffern ihm folgen.

G

Gleitkomma

Entspricht dem g Format, außer dass E statt e den Exponenten (bei Bedarf) einleitet.

a

Gleitkomma

Hexadezimaler Gleitkommawert mit doppelter Genauigkeit mit Vorzeichen, der die Form [−]0xh.hhhh dd hat, wobei h.hhhh die Hexadezimalziffern (mit Kleinbuchstaben) der Mantisse darstellt und dd eine oder mehrere Ziffern für den Exponenten. Die Genauigkeit gibt die Anzahl der Ziffern nach dem Punkt an.

A

Gleitkomma

Hexadezimaler Gleitkommawert mit doppelter Genauigkeit mit Vorzeichen der Form [−]Xh.hhhh dd hat, wobei h.hhhh die Hexadezimalziffern (mit Großbuchstaben) der Mantisse darstellt und dd eine oder mehrere Ziffern für den Exponenten. Die Genauigkeit gibt die Anzahl der Ziffern nach dem Punkt an.

n

Zeiger auf eine ganze Zahl

Anzahl der Zeichen, die bisher erfolgreich in den Stream oder Puffer geschrieben wurden. Dieser Wert wird in der ganzen Zahl gespeichert, deren Adresse als Argument angegeben wird. Siehe den Sicherheitshinweis weiter unten in diesem Artikel.

p

Zeigertyp

Zeigt das Argument als Adresse in den Hexadezimalzeichen an.

s

Zeichenfolge

Wenn Sie mit printf-Funktionen verwendet werden, gibt eine Einzelbyte- oder MULTIBytezeichenfolge an; Wenn Sie mit wprintf verwendet werden, funktioniert, gibt eine Zeichenfolge mit Breitzeichen an. Zeichen werden bis zum ersten NULL-Zeichen angezeigt, oder bis der Wert precision erreicht wird.

S

Zeichenfolge

Wenn Sie mit printf verwendet werden, funktioniert, gibt eine Zeichenfolge mit Breitzeichen an; wenn Sie mit wprintf-Funktionen verwendet werden, gibt eine Einzelbyte- oder MULTIBytezeichenfolge an. Zeichen werden bis zum ersten NULL-Zeichen angezeigt, oder bis der Wert precision erreicht wird.

Z

ANSI_STRING oder eine UNICODE_STRING-Struktur

Wenn die Adresse von ANSI_STRING oder UNICODE_STRING-Struktur als Argument übergeben wird, wird die Zeichenfolge an, die im Puffer enthalten ist, der von zum Buffer Feld der Struktur angezeigt wird. Verwendet einen Längenmodifiziererpräfix für w, um ein UNICODE_STRING-Argument – z. B. %wZ. Das Length-Feld der Struktur muss auf die Länge der Zeichenfolge in Bytes festgelegt werden. Das Feld MaximumLength der Struktur muss auf die Länge des Puffers in Bytes festgelegt werden.

In der Regel wird das Z-Typzeichen nur im Treiber verwendet, den, Debuggen, das eine Formatangabe verwenden, wie dbgPrint und kdPrint funktioniert.

Wenn das Argument, das einem Gleitkommakonvertierungsspezifizierer entspricht, unendlich ist, endlos oder NAN, zeigt die folgende Tabelle die formatierte Ausgabe auf.

Wert

Ausgabe

+ unendlich

1.#INFZufälligZiffern

- Infinity

- 1.#INFZufälligZiffern

Unbestimmt (wie auf stille Art NaN)

DigitrandomZiffern. #IND

NAN

DigitrandomZiffern. #NAN

Hinweis Hinweis

Wenn das Buffer Feld des Arguments, das zu %Z oder vom Argument entspricht, das zu %s oder zu %S entspricht, ein NULL-Zeiger ist, "(NULL)" wird angezeigt.

Hinweis Hinweis

In allen exponentiellen Formaten ist die standardmäßige Anzahl von Ziffern anzuzeigen Exponentenwerte drei. Mithilfe der _set_output_format-Funktion verwenden, können Sie die Anzahl von Ziffern festlegen, die zwei jedoch zum Erweitern bis drei angezeigt werden, wenn es durch die Größe des Exponenten angefordert.

Sicherheitshinweis Sicherheitshinweis

Da das %n Format grundsätzlich nicht sicher ist, wird es standardmäßig deaktiviert. Wenn %n in einer Formatzeichenfolge erreicht wird, wird der ungültige Parameterhandler aufgerufen, wie in Parametervalidierung beschrieben. Um %n Unterstützung zu aktivieren, finden Sie unter _set_printf_count_output.

Community-Beiträge

HINZUFÜGEN
Anzeigen:
© 2014 Microsoft