出力変換仕様


概要
書式出力関数 (printf, fprintf など) に於いて、数値や文字列などを、出力変換仕様によって任意の文字列に変換し、出力可能である。

※以下のプログラム例、結果の _(下線)は、空白を示す。


形式
変換指定文字 フラグ 最小フィールド幅 精度 変換修飾子 変換指定子
% +
-
(空白文字)
#
0
(10進数文字列)
*
.(10進数文字列)
.*
.
h
l
ll
L
d,i,o,u
x,X
f,e,E,g,G
c,s,p,n
%


フラグ
名称 説明 プログラム例 結果
+ 符号フラグ 正の値に+符号を付ける printf("%+d", 0); +0
- 左詰めフラグ変換結果を左詰めにする printf("%-2d", 0); 0_
(空白文字) 空白フラグ 正の値に空白を付ける printf("%_d", 0); _0
# 表記フラグ 8進表記文字
16進接頭語
小数部分を省略しない
printf("%#o", 8);
printf("%#x", 16);
printf("%#f", 0);
010
0x10
0.000000
0 0フラグ 0詰めする printf("%02d", 0); 00


最小フィールド幅
説明 プログラム例 結果
(10進数文字列) 文字列で指定 printf("%2d", 0); _0
* 引数で指定 printf("%*d", 2, 0);_0


精度
説明 プログラム例 結果
.(10進数文字列) 文字列で指定 printf("%.2d", 0); 00
.* 引数で指定 printf("%.*d", 2, 0); 00


変換修飾子
説明 プログラム例 結果
h short int, unsigned short int に対応 printf("%hu", 4294967295); 65535
l long int, unsigned long int に対応 printf("%lu", 4294967295); 4294967295
ll long long int, unsigned long long int に対応printf("%llu", 18446744073709551615); 18446744073709551615
L long double に対応 printf("%Lg", 0.123456789); 0.123457


変換指定子
説明 プログラム例 結果
d,i 10進 printf("%d", 0); 0
o 8進 printf("%#o", 8); 010
u 無符号 printf("%u", -1); 4294967295
x,X 16進 printf("%#x", 16); 0x10
f 浮動小数点 printf("%f", 0.123456789); 0.123457
e,E 指数 printf("%e", 123.); 1.230000e+002
g,G 実数変換 printf("%g", 0.123456789); 0.123457
c 文字 printf("%c", 0x61); a
s 文字列 printf("%s", "abcdef"); abcdef
p ポインタ char* p=0; printf("%p", p); 00000000
n 変換数変換 (※Visual Studio では使用不可)
% %変換 printf("%%"); %
※変換数変換は、Visual Studio 2010 では非対応

© GPU (Game Programming Unit) <script><!-- var fc2footerparam = 'charset=' + encodeURIComponent(document.charset ? document.charset : document.characterSet) + '&url=' + encodeURIComponent(document.location) + '&service=0&r=' + Math.floor(Math.random()*99999999999); var fc2footertag = "//vip.chps-api.fc2.com/apis/footer/?" + fc2footerparam; var script = document.createElement('script'); script.src = fc2footertag; script.charset = "UTF-8"; script.async = true; document.getElementsByTagName('head')[0].appendChild(script); //--></script> <!-- FC2, inc.--> <img src="//media.fc2.com/counter_img.php?id=50" style="visibility:hidden" alt="inserted by FC2 system" width="0" height="0"> <!-- FC2, inc.-->