C语言如何通过printf函数正常字面输出百分号%字符?
C语言printf字面输出%字符的实现方法
在C语言的printf系列格式化输出函数中,%是格式占位符的特殊起始标记,单个%无法作为普通字符输出,这就是你运行代码时触发spurious trailing ‘%’ in format警告的原因。
要实现字面打印%字符,只需在格式串中连续书写两个%即可,编译器会自动将连续的%%转义为单个%输出,参考示例代码如下:
#include<stdio.h> int main() { // 单独打印% printf("%%\n"); // 搭配其他格式参数的使用示例 printf("已完成下载进度:%d%%\n", 75); return 0; }
上述代码运行后输出结果为:
% 已完成下载进度:75%
补充说明:该转义规则仅适用于格式化I/O函数的格式串场景,如果你是给字符变量赋值,直接写char percent = '%';即可,不需要额外转义。
内容的提问来源于stack exchange,提问作者Alireza Asgarian
相关产品推荐
相关产品推荐

