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

 

posted on 2010-09-02 11:06  小土泥  阅读(293)  评论(0编辑  收藏  举报

导航