C言語独学完備マニュアル(07)——printf()出力フォーマット詳細


カスタムViewシリーズチュートリアル00–自分と過去を覆し、カスタムViewカスタムViewシリーズチュートリアル01–共通ツール紹介カスタムViewシリーズチュートリアル02–onMeasureソース詳細分析カスタムViewシリーズチュートリアル03–onLayoutソース詳細分析カスタムViewシリーズチュートリアル04–Drawソース分析およびその実践カスタムViewシリーズチュートリアル05–カスタムViewシリーズチュートリアル06の例分析–ViewのTouchイベントの詳細理カスタムViewシリーズチュートリアル07–詳細View Group配布TouchイベントカスタムViewシリーズチュートリアル08–スライド競合の発生とその処理
Androidソフトキーボードの難病を探求Android非同期の精髄Handler Androidの主流フレームワークの不可欠な基盤を詳しく理解ソースコードの肩に立ってScrollerの動作メカニズムを完全に理解する
Androidマルチ解像度アダプティブフレームワーク(1)—コアベースAndroidマルチ解像度アダプティブフレームワーク(2)—原理解析Androidマルチ解像度アダプティブフレームワーク(3)—使用マニュアル
著作権声明
  • 本文オリジナル作者:谷哥の弟
  • 作者のブログアドレス:http://blog.csdn.net/lfdfhl

  • printf()フォーマットの一般的な形式は次のとおりです.
    %[フラグ][幅][精度][長さ]タイプ
    各部分の詳細は以下の通りである.
    を選択します.
    を選択します.
    しゅつりょく

    dまたはi
    符号付き十進法整形
    392
    u
    むきごうじっしんせいけい
    7235
    o
    符号なし8進数
    610
    x
    符号なし16進整形
    7fa
    X
    符号なし16進整形(大文字)
    7FA
    f
    10進浮動小数点数、小文字
    392.65
    F
    10進浮動小数点数、大文字
    392.65
    e
    科学計数法(末尾/指数)、小文字
    3.9265e+2
    E
    科学計数法(末尾/指数)、大文字
    3.9265E+2
    g
    最も短い表現:%eまたは%fを使用
    392.65
    G
    最短表示:%Eまたは%F
    392.65
    a
    16進浮動小数点数、小文字
    -0xc.90fep-2
    A
    16進浮動小数点数、大文字
    -0XC.90FEP-2
    c
    文字
    a
    s
    文字列
    sample
    p
    ポインタアドレス
    b8000000
    n
    印刷しません.対応するパラメータは、シンボル整形ポインタを指す必要があります.これまでに書き込まれた文字数は、指向された位置に格納されます.
    %
    1%文字の後に続く別の%は1%に書き込まれます.
    %
    ひょうしき
    ひょうしき
    説明
    -
    指定したフィールド幅内で左揃え;右揃えはデフォルトです(幅サブ説明子を参照).
    +
    結果が正数であっても、結果に正負の記号(+または-)を付ける.デフォルトでは、負の数だけが正負の記号になります.
    (space)
    正負記号が書き込まれていない場合は、スペースを挿入します.
    #
    o,xまたはXの説明子と一緒に使用すると、0以外の数字の前に0,0 xまたは0 Xの接頭辞が加算されます.a,A,e,E,f,F,gまたはGと併用すると,小数点がなくても強制的に書き込み出力に小数点が含まれる.デフォルトでは、小数点がなければ小数点は書き込まれません.
    0
    入力するときは、スペースの代わりにゼロ(0)を使用します(幅サブ説明子を参照).


    説明
    (数値)
    印刷する最小文字数.印刷する値の長さがこの数字より小さい場合、結果はスペースに入力されます.値の長さがこの数値より大きい場合、値は切り捨てられません.
    *
    幅はformat文字列では指定されていませんが、追加のパラメータで指定する必要があります.
    せいど
    せいど
    説明
    .数値
    整数タイプ(d,i,o,u,x,X):精度書き込みの最小桁数を指定します.書き込みたい値がこの数字より短い場合、結果は以前はゼロになります.結果が長くても値は切り捨てられません.精度0は値0に対して文字が書き込まれていないことを示します.a,A,e,E,f,Fタイプ:小数点以下で印刷する桁数です(デフォルトは6).gおよびGタイプの場合:これは印刷する有効な数字の最大数です.sタイプの場合:これは印刷する最大文字数です.デフォルトでは、最後の空の文字になるまですべての文字が印刷されます.精度を指定したときに明確な精度値がない場合は、0とします.
    .*
    format文字列には精度は指定されていませんが、追加のパラメータで指定する必要があります.
    長さ
    長さ
    d i
    u o x X
    f F e E g G a A
    c
    s
    p
    n
    (none)
    int
    unsigned int
    double
    int
    char*
    void*
    int*
    hh
    signed char
    unsigned char
    signed char*
    h
    short int
    unsigned short int
    short int*
    l
    long int
    unsigned long int
    wint_t
    wchar_t*
    long int*
    ll
    long long int
    unsigned long long int
    long long int*
    j
    intmax_t
    uintmax_t
    intmax_t*
    z
    size_t
    size_t
    size_t*
    t
    ptrdiff_t
    ptrdiff_t
    ptrdiff_t*
    L
    long double
    注意事項:
  • cタイプ:int(またはwint_t)をパラメータとして使用するが、出力にフォーマットする前にchar値(またはwchar_t)
  • に変換する.
  • 太字斜体の符号はC 99規格
  • に属する.
    サンプルコード
    #include 
    
    int main()
    {
       printf ("Characters: %c %c 
    "
    , 'a', 65); printf ("Decimals: %d %ld
    "
    , 1977, 650000L); printf ("Preceding with blanks: %10d
    "
    , 1977); printf ("Preceding with zeros: %010d
    "
    , 1977); printf ("Some different radices: %d %x %o %#x %#o
    "
    , 100, 100, 100, 100, 100); printf ("floats: %4.2f %+.0e %E
    "
    , 3.1416, 3.1416, 3.1416); printf ("Width trick: %*d
    "
    , 5, 10); printf ("%s
    "
    , "A string"); return 0; }

    実行結果
    Characters: a A 
    Decimals: 1977 650000 
    Preceding with blanks: 1977 
    Preceding with zeros: 0000001977 
    Some different radices: 100 64 144 0x64 0144 
    floats: 3.14 +3e+000 3.141600E+000 
    Width trick: 10 
    A string

    参考資料
    本文の重要な参考資料:http://www.cplusplus.com/reference/cstdio/printf/