經(jīng)典的Hello World代碼:
printf("Hello World!!!");
更考究的寫法應(yīng)該是:
printf("%s", "Hello World");
理由有:
1. 當(dāng)"Hello World"變成“%%%”,第一種寫法就有問(wèn)題。
2. 感覺(jué)第二種速度快(沒(méi)有測(cè)試),函數(shù)需要對(duì)format參數(shù)的每個(gè)字符進(jìn)行判斷,format參數(shù)短的函數(shù)速度應(yīng)該快些。
當(dāng)然真正的理由是第一條,printf類函數(shù)對(duì)format參數(shù)中的%有特殊處理,因此在實(shí)際運(yùn)用中要求format參數(shù)受控,盡量避免該參數(shù)從外部讀入,如用戶輸入或者從文件讀入。