[C/C++] フォーマット指定子

printf や fprintf に使用するフォーマット指定子。良く忘れるので備忘として。

指定子

対応する型

意味

記述例

%c

char

1文字

“%c”

%s

char *

文字列

“%8s”, “%-10s”

%d

int, short

符号付き整数(10進)

“%-2d”,”%03d”

%u

unsigned int, unsigned short

符号なし整数(10進)

“%2u”,”%02u”

%x

int, short, unsigned int, unsigned short

整数(16進)

“%04x”

%f

float, double

実数(浮動小数点)

“%5.2f”

%e

float, double

実数(指数)

“%5.3e”

%ld

long

符号付き倍精度整数(10進)

“%-10ld”

%lu

unsigned long

符号なし倍精度整数(10進)

“%10lu”

%lx

long, unsigned long

倍精度整数(16進)

“%08lx”

%lf

double

倍精度実数

“%8.3lf”

数値なら何でも%dとしてしまいがちで、longの場合の “l” 前置や、符号なしの場合は “u” というのをよく忘れる。あと、ゼロパディング指定も忘れがち。

参考:
http://www.k-cube.co.jp/wakaba/server/format.html

タイトルとURLをコピーしました