便利な出力関数のprintf(プリントエフ)。Javaでもバージョン5から追加されて使えるようになった。コマンドプトンプトに表示する場合は、これだけあれば十分だと思う。他にもputsとかputcharなど、いくつか出力関数はあるのだが、使う必要性はなさそうだ。printfは書式指定ができる便利な関数。
printf 主な書式変換
#include <stdio.h>
int main(void){
int num = 255;
/* 10進数 */
printf("%d\n",num);
/* 16進数 小文字 */
printf("%x\n",num);
/* 16進数 大文字 */
printf("%X\n",num);
/* 8進数 */
printf("%o\n",num);
/* 複数の指定も可能 */
printf("%d %x\n",num,num);
/* 小数 丸められる*/
printf("%f\n",3.141592653);
/* 小数 桁全体11、小数点以下10 */
printf("%11.10f\n",3.141592653);
/* 指数表示 */
printf("%e\n%e\n",0.00003,456.789);
/* 符号表示 */
printf("%+e\n%+f\n",-0.067,2.345);
/* アドレス表示 */
printf("%p\n",&num);
/* 4桁右揃え */
printf("%4d\n",1);
/* 4桁右揃え 余白を0で埋める */
printf("%04d\n",12);
/* 単純文字列 */
printf("text\n");
/* 文字列 */
printf("%s\n","text");
/* char */
printf("%c\n",'a');
/* コード char */
printf("%c\n",101);
return 0;
}
|
桁をそろえたり、16進数にしたりなど結構便利に使える。
255
ff
FF
377
255 ff
3.141593
3.1415926530
3.000000e-005
4.567890e+002
-6.700000e-002
+2.345000
0023FF4C
1
0012
text
text
a
e
|
printfで桁をそろえてみる
#include <stdio.h>
int main(void){
int i,j=1;
for(i=0; i<100; i++){
if(i==10*j){
printf("\n");
j++;
}
printf("%4d",i);
}
return 0;
}
|
「%4d」は右揃えで4桁分で整数を10進数で表示を意味する。
0 1 2 3 4 5 6 7 8 9
10 11 12 13 14 15 16 17 18 19
20 21 22 23 24 25 26 27 28 29
30 31 32 33 34 35 36 37 38 39
40 41 42 43 44 45 46 47 48 49
50 51 52 53 54 55 56 57 58 59
60 61 62 63 64 65 66 67 68 69
70 71 72 73 74 75 76 77 78 79
80 81 82 83 84 85 86 87 88 89
90 91 92 93 94 95 96 97 98 99
|
C言語 ANSI C89 Meadow & MinGW GCC 目次はこちら