printf()関数



printf
構文:
  #include 
  int printf( const char *format, ... );

printf()関数は、format(フォーマット)で与えるフォーマットに従ってstdOUT(標準出力)およびその他のパラメータに印刷出力.
文字列format(フォーマット)は、画面に表示する文字とprintf()表示を定義する他のパラメータの2種類の項目からなる.基本的には、テキストを含むformat(フォーマット)文字列を指定したり、printf()の他のパラメータにマッピングする「特殊」文字を指定したりすることができます.例えば本コード
    char name[20] = "Bob";
    int age = 21;
    printf( "Hello %s, you are %d years old/n", name, age );

次の出力が表示されます.
    Hello Bob, you are 21 years old

%sは、「ここに最初のパラメータ、文字列を挿入します.」%dは、2番目のパラメータ(整数)がそこに配置すべきであることを示す.異なる「%-codes」は異なる変数タイプを表す、変数の長さを制限することもできる.
Code
書式設定
%c
文字
%d
符号付き整数
%i
符号付き整数
%e
科学カウント法、小文字「e」を使う
%E
科学カウント法、大文字「E」を使用
%f
浮動小数点数
%g
%eまたは%fの短い1つを使用
%G
%Eまたは%fの短い1つを使用
%o
8進法
%s
文字列
%u
符号なし整数
%x
符号なし16進数、小文字
%X
符号なし16進数、大文字
%p
1つのポインタ
%n
パラメータは、整数を指すポインタが文字数の配置位置を指すべきです.
%%
'%'記号
1%とフォーマットコマンドとの間に位置する整数は、最小フィールド幅の説明子を担当し、十分なスペースまたは0を加える出力を十分に長くする.0を入力したい場合は、最小フィールド幅の説明子の前に0を配置します.使用するフォーマットコードによって異なる意味を持つ精度修飾子を使用することができます.
  • %e,%E,%fを使用して、精度修飾子はあなたに所望の小数位数を指定させます.例えば、
        %12.6f
    
    には少なくとも12桁の数字が表示する、6桁の小数点数を有する浮動小数点数が表示される.
  • は、%gおよび%G、精度修飾子で表示する有効数のビット数の最大値を決定する.
  • は%sを用いる、精度修飾子は、句点前の最小フィールド長を補うために最大の最大長を簡単に表す.

  • すべてのprintf()の出力は右揃えです.%記号の後にマイナス記号を置かない限り.たとえば、
        %-12.4f
    

    12ビットの文字、4ビットの小数点以下の浮動小数点数、左揃えが表示されます.アルファベットlやh%d,%i,%o,%u,%xなどのタイプの説明子を変更して、長型と短型のデータ型(例えば%hdは短い整数を表す)%を指定することができます.e,%f,%gタイプの説明子は、それらの前にlを置いてdoubleに従うことを示すことができる.g,%f,%eタイプの説明子は、小数点が小さいなくても文字'#'の前に置くことができる.%xタイプの説明子を持つ'#'文字の使用は、16進数を表示する際に'0 x'接頭辞を付けるべきであることを示す.%oタイプの説明子付きの'#'文字の使用は、8進数を表示するときに'0'の接頭辞を付けるべきであることを示す.
    出力文字列に連続するEscapeシーケンスを含めることができます.
    printf()の戻り値は印刷された文字数であり、エラーが発生した場合は負の値を返します.