- 1. 概要
- 2. 書式
- 3. 主なフラグ文字
- 4. 主な長さ修飾子
1. 概要
「printf」は、書式化して、出力する関数です。
2. 書式
#include <stdio.h>
int printf(const char *format, ...);
int fprintf(FILE *stream, const char *format, ...);
int sprintf(char *str, const char *format, ...);
int snprintf(char *str, size_t size, const char *format, ...);
「printf」は、標準出力への出力。
「fprintf」は、「stream」で示すファイルポインタへの出力。
「sprintf」は、「str」で示す、メモリへの出力。
「snprintf」は、「str」で示す、「size」バイトのメモリへの出力。「sprintf」は、バッファオーバーランの問題がありますので、「snprintf」が推奨されます。
C言語の覚え初めに、最も使う関数かもしれません。
書式は以下の形式になります。派生する関数や言語でもほぼ同様の書式が使用されます。
%[フラグ文字][フィールド幅][精度][長さ修飾子][変換指定子]
3. 主なフラグ文字
文字 | 意味 |
# | o 変換の場合、先頭に 0 をおく。
x または X 変換の場合、先頭に 0x をおく。
a, A, e, E, f, F, g, G の場合、小数点に続く数字がない場合も小数点をおく (通常は、小数点の後に数字が続く場合にのみ、 小数点が表示される)。
g または G 変換の場合、末尾のゼロが変換結果から削除されない。 |
0 | 0 パディングする。 |
- | 左揃えにする。 |
' ' | 正の数字の前に空白スペースをおく。 |
+ | 正の数字の前に + をおく。 |
' | i, d, u, f, F, g, G の前に、ロケールに指定があれば、1000単位の区切り文字を出力する。 |
I | i, d, u の場合、ロケールの代替出力数字があれば、それを出力する。 |
4. 主な長さ修飾子
修飾子 | 意味 |
hh | singed char か unsigned char |
h | short int か unsigned short int |
l | long int か unsigned long int |
ll | long long int か unsigned long long int |
L | long double |
|
|