printf 関数の型フィールド文字

ファイル形式仕様では、type の文字は対応する引数は文字、文字列、ポインター、整数、浮動小数点数として解釈する必要があるかどうかを指定する変換の指定子です。type の文字が唯一の必須ファイル形式仕様のフィールドで、すべての省略可能フィールドの後に表示されます。

ファイル形式の文字列以降の引数は type の対応する文字と サイズ のオプションのプレフィックスに従って解釈されます。文字型 char と wchar_t の変換は c のか C使用して指定され、バイト文字と複数のバイトまたはワイド文字列が形式の関数が使用されている S使用して指定されます、またはの s。c を使用して指定され、s が printf ファミリの関数によって char と char* として解釈される wprintf ファミリの関数によって wchar_t と wchar_t* として文字および文字列引数、または。C を使用して指定され、S が printf ファミリの関数によって wchar_t と wchar_t* として解釈される wprintf ファミリの関数によって char と char* として文字および文字列引数、または。

整数 shortは、int、long、long long"など) を入力し、unsigned のバリアントで d、i、o、u、xと Xを使用して指定します。float、doubleと long doubleのような浮動小数点型は a、A、e、E、f、gと Gを使用して指定します。size のフィールド長のプレフィックスによって変更されない既定では、整数の引数は int の型に変換され、浮動小数点引数は doubleに強制変換されます。64 ビット システムでは、int は 32 ビット値です; そのため、64 ビットの整数は ll または I64 の size プレフィックスが使用する出力の書式を指定する省略されます。プラットフォームに p を使用して、既定の長さ指定されたポインター型。

[!メモ]

これらは printfwprintf 関数で使用され、Microsoft 拡張機能、ANSI 互換ではない場合に c と s の型文字の C、Sと Z の型文字と動作。Visual C++ は F の型文字はサポートされません。

printf の型フィールド文字

型の文字

引数

出力書式

c

文字

printf して使用した場合は、機能し、バイト文字を指定します; wprintf して使用した場合は、機能し、ワイド文字を指定します。

C

文字

printf して使用した場合は、機能し、ワイド文字を指定します; wprintf して使用した場合は、機能し、バイト文字を指定します。

d

Integer (整数型)

符号付き 10 進整数。

i

Integer (整数型)

符号付き 10 進整数。

o

Integer (整数型)

符号なし 8 進整数。

u

Integer (整数型)

符号なし 10 進整数。

x

Integer (整数型)

符号なし 16 進数の整数; 使用 "X"。

X

Integer (整数型)

符号なし 16 進数の整数; 使用 "ABCDEF"。

e

浮動小数点

d が 1 台の 10 進数です。フォーム [ – ]d.dddd e [署名] dd[d]を持つ符号付きの値は、dddd 10 個以上の 10 進数です dd[d] は、指数部の 出力ファイル形式 とサイズによって 2 桁または 3 桁の 10 進数であり、符号は、 + または–あります。

E

浮動小数点

e ではなく e ファイル形式が、E と同じ指数部が発生します。

f

浮動小数点

dddd が 10 個以上の 10 進数である場合、フォーム [–]dddd.ddddを持つ符号付きの値。整数部の桁数は、その数値の絶対値によって決定され、小数部の桁数は要求される精度によって決定されます。

g

浮動小数点

符号付きの値は f か e のファイル形式で指定された値および精度の短い方では、どの場合でも、表示されます。e ファイル形式で値の指数部が precision の引数に–4 するよりも大きいか等しいよりも小さい場合にのみ使用されます。後続のゼロは切り捨てられ、一つ以上の数字とそれに続く場合にのみ小数点が表示されます。

G

浮動小数点

eではなく g のファイル形式が、Eと同じで、指数が発生します (適切な場合)。

a

浮動小数点

h.hhhh 仮数 は 16 桁の 10 進数の数字 (小文字を使用)、dd は、指数部の一つ以上の数字です。ここでフォーム [-] 0xh.hhhhddを持つ符号付き 16 進数で倍精度浮動小数点値。精度は点の後に数字の数を指定します。

A

浮動小数点

h.hhhh 仮数は 16 桁の 10 進数の数字 (大文字を使用)、dd は、指数部の一つ以上の数字です。ここでフォーム [-] 0Xh.hhhhddを持つ符号付き 16 進数で倍精度浮動小数点値。精度は点の後に数字の数を指定します。

n

整数へのポインター。

ストリームやバッファーに正しくこれまでの場所に書き込まれる文字数。この値は、アドレスが引数として指定された整数に格納されます。この記事のセキュリティに関するメモを参照してください。

p

[ポインターの種類]

16 進数のアドレスとして引数を表示します。

s

[文字列]

printf 関数を使用すると、バイト、マルチバイト文字列を指定します; wprintf して使用した場合は、機能し、文字列を指定します。最初の文字が null 文字まで表示または precision の値に達するまでされます。

S

[文字列]

printf して使用した場合は、機能し、文字列を指定します; wprintf 関数を使用すると、バイト、マルチバイト文字列を指定します。最初の文字が null 文字まで表示または precision の値に達するまでされます。

Z

ANSI_STRINGUNICODE_STRING の構造

または ANSI_STRINGUNICODE_STRING 構造体 のアドレスが引数として渡すときに、構造体の Buffer のフィールドが指すバッファーに含まれる文字列を表示します。引数の例 UNICODE_STRING、%wZを指定するには w の長さの修飾子のプレフィックスを使用します。構造体の Length フィールドの長さは、文字列のバイト単位に設定されている必要があります。構造体の MaximumLength のフィールドは、長さが、バッファーのサイズをバイト単位で設定されている必要があります。

通常、Z の型文字はドライバーでのみ使用されますが、デバッグにファイル形式仕様を使用する機能する dbgPrintkdPrintなど)。

浮動小数点変換の指定子に対応する引数が無限、無制限、または nan 場合は、次の表に、出力書式設定を示します。

価値

出力

+ 無限

1.#INF任意の数字

–に無限

–1.#INF任意の数字

無期限に NaN (しましたと同様に)

digitrandom 数字[.]#IND

nan

digitrandom 数字[.]#NAN

[!メモ]

%Zに、または %s か %Sに対応する引数の対応する引数の Buffer のフィールドが、null ポインターの場合、" (null) " と表示されます。

[!メモ]

すべての指数ファイル形式で、表示する指数部の桁数の既定値は 3 です。_set_output_format 関数を使用して、指数部のサイズによって要求されると 3 に 2 配置に表示桁数を設定できます。

セキュリティに関するメモセキュリティに関するメモ

%n のファイル形式は、基本的に安全でないため、既定では無効になります。%n がファイル形式の文字列に検出された場合、無効なパラメーター ハンドラーが パラメーターの検証に説明されているように、開始されます。%n のサポートを有効にするには、_set_printf_count_outputを参照してください。

参照

関連項目

printf、_printf_l、wprintf、_wprintf_l

書式指定構文: printf 関数と wprintf 関数

フラグ ディレクティブ

printf 関数の文字幅指定

精度指定

サイズ指定

_set_output_format