在 printf 格式字符串中,% 是格式佔位符的起始符號。若要輸出字面上的百分號 %,需要怎麼寫?
%%在格式字符串中連續寫兩個百分號 %%,即可輸出單個 %。
#includeint main() { int a = 5, b = 3; int ret = a % b; // 餘數運算 // 正確寫法:%% 輸出字面 % printf("%d %% %d = %d\n", a, b, ret); return 0; }
5 % 3 = 2
%d、%s 等:格式佔位符,對應後續參數%%:轉義序列,不消耗參數,直接輸出字面 %printf 族函數的統一規定// 錯誤:單個 % 後跟非格式字符,行為未定義
printf("5 % 3 = 2\n");
// 正確:使用 %%
printf("5 %% 3 = 2\n");
使用 C++ iostream 時無需轉義,直接輸出字符:
#includeint main() { std::cout << "5 % 3 = 2" << std::endl; // 直接寫 % return 0; }