C語言格式修飾符洋解

2021-05-11 12:38:04 字數 835 閱讀 8332

格式修飾符:

最小域寬限定符:

百分號和格式**間的整數稱為最小域寬限定符,它保證輸出時用空格填充以達到最小域寬。預設為空格,如果想用0來填充,那麼在域寬限定符前放乙個0。如:

%05d將對不是五位數的輸出數字填充0以達到最小域寬。

精度限定符:

如:%10.4f 該數至少10個字元寬,精確到小數點後面4位。

對齊輸出:預設時,所有輸出均為右對齊。可以通過在百分號後加乙個減號來迫使資料向域左邊界對齊.如:%-10.2f表示在10個字元域寬內以左對齊方式顯示乙個小數點後有兩位有效數字的浮點數.

*和#修飾符:如果g、g、f、e或e前面有#,就可以確保即使沒有小數字也要顯示小數點。如果x或x前面有#,那麼十六進製制數將帶0x字首顯示,在o前面加上#符號會使得列印的數字前補0,#不能用於其它任何格式限定符。

最小域寬和精度限定符可以通過變元而不是常數提供給printf().為了實現這一點,我們用*作為佔位符。當編譯器掃瞄到格式串時,printf()將*與變元串中的引數按順序匹配。如:printf("%*.*",10,4,1234.56);  最小域寬是10,精度是4,將要顯示的是  1234.56。

scanf:

使用乙個掃瞄集:

如:char str[80];

scanf("%[abc]",str);

表示 掃瞄集告訴scanf()唯讀字元a, b, c,直到遇到第乙個不在此掃瞄集中的字元為止。

壓縮輸入:

如果在域的格式碼前加上*,則使用者就可以告訴scanf()讀這個域,但並不把它賦於任何變數,如:

scanf("%d,%*c%d",&x,&y);

當輸入10,10時,逗號將被讀過但不賦於任何變數。

C 修飾符 類修飾符和成員修飾符

c 修飾符之類修飾符 public internal partial abstract sealed static internal 本程式集內的成員可以訪問。partial 部分類,可以將乙個類分成幾部分寫在不同檔案中,最終編譯時將合併成乙個檔案,且各個部分不能分散在不同程式集中。c 修飾符之成員...

layout格式修飾符

如給定的乙個格式 5p t m n中,並沒有明確的分隔轉換字元和普通文字的字元存在。patternlayout能自己區分普通文字和轉換字元。其中 5p是日誌的呼叫級別。事件是左對齊的,5個字元寬度。格式修飾符,放在 和轉換符之間。第乙個可選的格式修飾符是左對齊 第二個可選的格式修飾符是字段最小寬度。...

學習C 修飾符 類修飾符和成員修飾符

c 修飾符之類修飾符 public internal partial abstract sealed static c 修飾符之成員修飾符 public protected private internal sealed abstract virtual override readonly cons...