「C言語」の版間の差分
提供: Wikinote
(新しいページ: 'C 言語再考。 * [http://www.linux.or.jp/JM/html/LDP_man-pages/man3/printf.3.html Manpage of PRINTF] == 覚え書き == === <code>printf</code> のフォーマット === % ...') |
(→printf のフォーマット) |
||
行11: | 行11: | ||
printf("1234567890 1234567890\n"); | printf("1234567890 1234567890\n"); | ||
+ | printf("---------------------\n"); | ||
f = 123.456; | f = 123.456; | ||
printf("%f %f\n", f, -f); | printf("%f %f\n", f, -f); | ||
行27: | 行28: | ||
$ gcc -o printf printf.c; ./printf | $ gcc -o printf printf.c; ./printf | ||
1234567890 1234567890 | 1234567890 1234567890 | ||
+ | --------------------- | ||
123.456001 -123.456001 | 123.456001 -123.456001 | ||
123.46 -123.46 | 123.46 -123.46 |
2009年2月3日 (火) 09:35時点における版
C 言語再考。
覚え書き
printf
のフォーマット
% で始まり、変換指定子で終わる。以下のプログラムで実験。
#include <stdio.h> int main(void) { float f; printf("1234567890 1234567890\n"); printf("---------------------\n"); f = 123.456; printf("%f %f\n", f, -f); printf("%.2f %.2f\n", f, -f); printf("%10f %10f\n", f, -f); printf("%10.2f %10.2f\n", f, -f); printf("%010.2f %010.2f\n", f, -f); printf("%-10.2f %-10.2f\n", f, -f); printf("%+10.2f %+10.2f\n", f, -f); printf("%*.2f %*.2f\n", 15, f, 15, -f); printf("%*3$.2f %*3$.2f\n", f, -f, 20); return 0; }
実行結果は下記のようになる。
$ gcc -o printf printf.c; ./printf 1234567890 1234567890 --------------------- 123.456001 -123.456001 123.46 -123.46 123.456001 -123.456001 123.46 -123.46 0000123.46 -000123.46 123.46 -123.46 +123.46 -123.46 123.46 -123.46 123.46 -123.46