次の方法で共有


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

更新 : 2007 年 11 月

type 文字は、唯一の必須書式指定フィールドであり、省略可能な書式指定フィールドに続けて指定します。type 文字によって、対応する引数を文字、文字列、または数値のいずれとして解釈するかが指定されます。C 型、n 型、p 型、S 型、および cs を指定した printf 関数の動作は、Microsoft の拡張機能であり、ANSI 互換ではありません。

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

文字

出力書式

c

int または wint_t

printf 関数で使用する場合は 1 つの 1 バイト文字、wprintf 関数で使用する場合は 1 つのワイド文字を指定します。

C

int または wint_t

printf 関数で使用する場合は 1 つのワイド文字、wprintf 関数で使用する場合は 1 つの 1 バイト文字を指定します。

d

int

符号付き 10 進整数。

i

int

符号付き 10 進整数。

o

int

符号なし 8 進整数。

u

int

符号なし 10 進整数。

x

int

符号なし 16 進整数。"abcdef" を使用します。

X

int

符号なし 16 進整数。"ABCDEF" を使用します。

e

double

[ – ]d.dddd e [sign]dd[d] 形式の符号付きの値。d は 1 桁の 10 進数、dddd は 1 桁以上の 10 進数、dd[d] は、出力形式 と指数部のサイズによって、2 桁または 3 桁になる 10 進数、sign は + または – を表します。

E

double

指数の前に e ではなく E が付く点を除いて、書式 e と同じです。

f

double

[ – ]dddd.dddd 形式の符号付きの値。dddd は 1 つ以上の 10 進数を表します。整数部の桁数は、その数値の絶対値によって決定され、小数部の桁数は要求される精度によって決定されます。

g

double

書式 f または e で出力される符号付きの値のうち、指定された値および精度を表現できる短い方の書式。書式 e は、値の指数部が –4 未満か、引数 precision で指定されている値よりも大きい場合だけ使用します。後続の 0 は切り捨てられ、後続の数値がある場合だけ小数点が出力されます。

G

double

指数の前に e ではなく E が付く点を除いて、書式 g と同じです (該当する場合)。

a

double

[−]0xh.hhhh dd の形式の符号付き 16 進倍精度浮動小数点値。h.hhhh は仮数部の 16 進数の桁を表し (小文字を使用)、dd は 1 桁以上の指数部です。精度には小数点以下の桁数を指定します。

A

double

[−]0xh.hhhh dd の形式の符号付き 16 進倍精度浮動小数点値。h.hhhh は仮数部の 16 進数の桁を表し (大文字を使用)、dd は 1 桁以上の指数部です。精度には小数点以下の桁数を指定します。

n

整数へのポインタ

ストリームまたはバッファにこれまでに書き込まれた文字数。この値は、アドレスが引数として与えられた整数に格納されます。下の「セキュリティに関するメモ」を参照してください。

p

void へのポインタ

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

s

文字列

printf 関数で使用する場合は 1 バイト文字列、wprintf 関数で使用する場合はワイド文字列を指定します。最初の NULL 文字まで、または precision で指定した範囲内で文字が出力されます。

S

文字列

printf 関数で使用する場合はワイド文字列、wprintf 関数で使用する場合は 1 バイト文字列を指定します。最初の NULL 文字まで、または precision で指定した範囲内で文字が出力されます。

メモ   %s または %S に対応する引数が null ポインタの場合は、"(null)" が出力されます。

メモ   すべての指数形式で、指数部に表示する既定の桁数は 3 です。_set_output_format 関数を使用すると、指数部に表示する桁数を 2 桁にし、指数部のサイズによって必要な場合は 3 桁に拡張することもできます。

セキュリティに関するメモ %n 形式は本質的に安全ではないので、既定では無効になっています。書式指定文字列に %n があると、「パラメータの検証」に説明されているように、無効なパラメータ ハンドラが呼び出されます。%n のサポートを有効にする方法については、「_set_printf_count_output」を参照してください。

参照

参照

printf、_printf_l、wprintf、_wprintf_l