码迷,mamicode.com
首页 > 其他好文 > 详细

150309——printf("%.*s")是何意?

时间:2015-03-09 08:11:19      阅读:132      评论:0      收藏:0      [点我收藏+]

标签:

借某论坛解答的几个例子:

// %.*s 其中的.*表示显示的精度 对字符串输出(s)类型来说就是宽度 // 这个*代表的值由后面的参数列表中的整数型(int)值给出 // 例如: printf("%.*s\n", 1, "abc");        // 输出a printf("%.*s\n", 2, "abc");        // 输出ab printf("%.*s\n", 3, "abc");        // 输出abc 


又,在".*"前加以数字x,会在字符串前加入(x-1)个空格:
printf("%3.*s\n", 1, "abc");        // 输出  a
printf("%3.*s\n", 2, "abc");        // 输出 ab
printf("%3.*s\n", 3, "abc");        // 输出abc 


如果“.*”前数字小于字符串大小也不会发生什么缩减字符的现象:

printf("%2.*s\n", 3, "abc");        // 输出abc


如上所述,printf("%*.*s",...),前一个*会在字符串前增加空格,后一个*则控制输出字符个数。
 

 

150309——printf("%.*s")是何意?

标签:

原文地址:http://www.cnblogs.com/suzyc/p/4322676.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!