C中对 printf("%.*s/n",len,content) 的意思理解。
一直不明白是什么意思,问了别人才知道printf("%.*s/n",6,"aaaaaaaaa")是什么意思。
如:
#include <stdio.h>
#include <stdlib.h>
int main(void)
{
char *content = "abcdefghijklmn";
printf("输出数据 :%.*s/n",5,content);
printf("输出数据 :%.*s/n",strlen(content),content);
return 0;
}
%.*s 指得是输入/出是一个指针参数。
5 表示输入/出指字符数据的长度,如果 5 等当前内容的长度,全部输出,如果小于内容长度,那么只输出前5个内容。
打印结果如下:
css22-test$ a.out
输出数据 :abcde
输出数据 :abcdefghijklmn