c - 如何用sprintf输出字符串中的符号%?

标签 c

我想通过 sprintf 将百分比转换为字符串。 一个可行的方法是这样的:

sprintf(str, "%d", num);
strcat(str, "%");

但是有没有办法只使用 sprintf 来完成呢?

最佳答案

(从评论中编译答案,只是为了将其从未回答的问题列表中删除。)

通过 sprintf() 打印 % 是通过 "%%" 完成的,即在您的情况下:

sprintf(str, "%d%%", num);

这是有用文档中的引述:

A '%' is written. No argument is converted. The complete conversion specification is '%%'

关于c - 如何用sprintf输出字符串中的符号%?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40012467/

相关文章:

c++ - 在结构中为 Char* 赋值,哪种解决方案是理想的 c++

c - 取消引用指针和访问数组元素之间的区别

c - 在 C 中使用常量时遇到问题

C - 仅从 file.txt 读取奇数行的程序

c - 处理一个空的 'else if'

c - 如何监视在 linux 中运行的两个服务,并在一个崩溃后重新启动它们

c - C 中 3d 连续数组的问题

c++ - 除非复制到新字符串,否则比较从 Lua 中的 C 函数推送的字符串失败

C malloc 一个指针多次

c - 这个类型转换是否正确?