【发布时间】:2019-07-15 02:41:17
【问题描述】:
我不知道这段代码是如何工作的?
#include<stdio.h>
int main()
{
char *s = "PRO coder";
int n = 7;
printf("%.*s", n, s);
return 0;
}
我得到的结果是“PRO cod”
【问题讨论】:
-
是的,它确实可以正常工作。您可能想查看 printf 和格式字符串的手册页。具体来说,如何指定精度(或者在这种情况下,要打印的字符/数字的数量)。
-
这个部分有一个几乎相同的例子:en.wikipedia.org/wiki/Printf_format_string#Precision_field
-
stackoverflow.com/questions/23776824/… 中的答案描述了如何很好地思考它。
标签: c