C語言printf用法詳解


#include <stdio.h>
int main()
{
    printf("%s","hello world1!\n");//%s字符標志可省略 字符串。輸出字符串中的字符直至字符串中的空字符(字符串以空字符’\0‘結尾)
    printf("hello world2!\n");
    int bla=10;
    float blb=10.005;
    float blc=0.00000323;
    printf("%d\n",bla);//%i %d輸出十進制有符號32bits整數 
    printf("%i\n",bla);
    printf("%o\n",bla);//%o八進制顯示 
    printf("0%o\n",bla);//一般八進制顯示前面帶0,與十進制相區分
    printf("%u\n",bla);//無符號十進制整數 
    printf("%x\n",bla);//%x十六進制顯示 :小寫 (10-15) 
    printf("%X\n",bla);//%x十六進制顯示 :大寫 (10-15) 
    printf("0x%x\n",bla);//%x十六進制顯示 :小寫 (10-15) ,一般十六進制以0X開頭 
    printf("0X%X\n",bla);//%x十六進制顯示 :大寫 (10-15),一般十六進制以0X開頭 
    printf("%e\n",blb);//%e科學計數法表示 
    printf("%E\n",blb);//%E科學計數法表示浮點數 
    printf("%E\n",blb);//%E科學計數法表示浮點數
    printf("%f\n",blb);//%f單精度浮點數 
    printf("%lf\n",blb);//%lf雙精度浮點數
    printf("%g,%f,%e\n",blc,blc,blc); //%g選擇最短的方式輸出(從%e %f選擇)
    printf("%G,%f,%e\n",blc,blc,blc); //%g選擇最短的方式輸出(從%e %f選擇)
    int bld=65;
    printf("%#X\n",&bld);//得到變量bld的地址 
    printf("%c\n",bld);//%c字符型。可以把輸入的數字按照ASCII碼相應轉換為對應的字符
    printf("%010p\n","lvlv");//輸出:0x004007e6,C語言中有一個控制符%p,專門用來以十六進制形式輸出地址,不過 %p 的輸出格式並不統一,有的編譯器帶0x前綴,有的不帶
    int a = 100;
    char str[20] = "c.biancheng.net";
    printf("%#X, %#X\n", &a, str);//%#X表示以十六進制形式輸出,並附帶前綴0X。a 是一個變量,用來存放整數,需要在前面加&來獲得它的地址;str 本身就表示字符串的首地址,不需要加&。
      int num=0;
    printf("lv534543lv%n\n",&num);
    printf("num:%d\n",num);
    printf("%%\n");//輸出:%
    printf("%m\n");//打印errno值對應的出錯內容(不明白)
    printf("%a %A",15.15,15.15);//十六進制p計數法輸出浮點數,a為小寫,A為大寫 
    /*2.2標志(flags)
flags規定輸出樣式,取值和含義如下:

字符    名稱    說明
-    減號    結果左對齊,右邊填空格。默認是右對齊,左邊填空格。
+    加號    輸出符號(正號或負號)
space    空格    輸出值為正時加上空格,為負時加上負號
#    井號    type是o、x、X時,增加前綴0、0x、0X。
type是a、A、e、E、f、g、G時,一定使用小數點。默認的,如果使用.0控制不輸出小數部分,則不輸出小數點。
type是g、G時,尾部的0保留。
0    數字零    將輸出的前面補上0,直到占滿指定列寬為止(不可以搭配使用“-”)
*/
printf("%+d %+d\n",1000,-1000);     //輸出正負號
 
printf("% d % d\n",1000,-1000);     //正號用空格替代,負號輸出
 
printf("%x %#x\n",1000,1000);       //輸出0x
 
printf("%.0f %#.0f\n",1000.0,1000.0);//當小數點后不輸出值時依然輸出小數點
 
printf("%g %#g\n",1000.0,1000.0);   //保留小數點后后的0
 
printf("%05d\n",1000);              //前面補0

    
     
}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM