[英]How do I use multiple precisions in printf()?
查看标题为“ 精度可以省略或以下任何一项 ”下的信息。
示例: printf("%.*s", 3, "abcdef");
起作用,输出: abc
(截断字符串的其余部分。)
现在,我想将一个带有多个参数的字符串格式化(截断):
printf("%.*s, %.*s", 3, 3, "abcdef", "xyz123");
但是程序崩溃了。
正确的语法是什么?
谢谢。
也许您应该更改订单?
printf("%.*s, %.*s", 3, "abcdef", 3, "xyz123");
顺便说一下,如果您不需要将精度作为变量,则可以对其进行硬编码:
printf("%.3s, %.3s", "abcdef", "xyz123");
(斯蒂芬·佳能请改正错字)
您想要这样做:
printf("%.*s, %.*s", 3, "abcdef", 3, "xyz123");
格式参数应与格式说明符顺序相同。
printf("%.*s, %.*s",3,"abcdef",3,"xyz123");
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.