printf()函數的不熟悉的地方

       一.格式控制符/////全屏瀏覽函數

  1. %d, %i輸出做用同樣,表示有符號十進制數spa

  2. %g,%G根據數據的大小確認輸出時%e仍是%f格式字符串

  3. 輸出的打印項目能夠是變量,常量,表達式變量

  4. .%a, %A,用來輸出浮點數的十六進制數和P-計數法數據

  5. %x使用無符號的十六進制數項目

    二.轉換修飾說明符co

  6. %-d:輸出的數據左對齊字符

  7. %-20d:輸出的數據佔用20字段的寬度,而且若是字符寬度不知足20的話,自動左對齊,其他空格補齊浮點數

  8. %+d:顯示正負號錯誤

  9. % d:正數前面空一格,負數按%d輸出,主要是方便正數和負數的對齊

  10. %020d:輸出整數佔用20個字段的寬度,且空格地方用0補齊

    三.不匹配的轉換形成的後果

  11. short num = 336;printf("%c", num) //輸出結果爲 p,由於字符只須要一個字節,而num佔用2個字節,而printf()輸出時只擦看存放336的一個字節,至關與256%336的結果對應的字符;

  12. int num = 65618;printf(「%hd」, num) //由於結果只須要2個字節,二num有4個字節,而printf()輸出時只擦看存放65618的2個字節,至關於65536%65618的結果;

  13. short num = -336;printf(「%hu」, num) // 輸出結果爲爲65200,由於在系統中有符號類型,65535表明-1,65534-2,因此-336由65535-336來表示,即65200來表示;

    四·.printf()函數的返回值問題

  14. 當printf()成功打印出一內容後,會返回雙引號中的字符數目,包括空格和不可見的換行字符,若是沒有成功打印會返回一個負數 好比 int shu, a = 5;shu = printf(「%d」, a);打印完後shu = 2;

  15. 當printf()函數中一行的內容太多時,若是須要換行繼續寫的話必須遵行一下規則:1.printf(「%d dadadaada」,

                                                                                                                                                          a)或者逗號放在a前面,a)也是是正確的,而printf(「%d dadada

                                                                                                                                                                                 da」,a)是錯誤的,除非在(「%d dadada後面加一個 \ 在換行則說明上下是鏈接在一塊兒的,且第二行必須左頂格寫,不然空格也要算在裏面

                                                                                                                                   2.使用多個printf()函數

                                                                                                                                   3.多個字符串分別採用」「來鏈接,好比printf(」dada「

                                                                                                                                                                                                           」wawa「)也是能夠的,緣由,雙引號間的任何字符都不在起做用,要想空格必須在雙引號內

  16. 輸出的時候格式符的類型必須和變量配對,不然有問題

相關文章
相關標籤/搜索