格式化输出

printf函数提供格式化输出转换。
格式串包含两种类型的对象:普通字符(直接被复制到输出流中)和转换字符(分别决定下一后续参数的的转换和打印)。

转换字符

  • u 无符号十进制表示

  • h 表示将相应的参数按short或者unsigned short类型输出

  • l 表示将相应的参数按long或者unsigned long类型输出

  • L表示将相应的参数按long double类型输出
    备注:根据上述,如果是无符号数据类型,应该用u,但如果数据类型是short或者long,不管是否是无符号都应该用对应的h或者l表示

  • 点号前数值:指定最小字段宽度。若参数的字符数小于此数值,则在参数左边填充一些字符(空格或0)

  • 点号:用于分割字段的宽度和精度

  • 表示精度的数:对于字符串,指定打印的字符串的最大个数;对于e、E、f转换,它指定打印的小数点后的数字位数;对于g或G转换,它指定打印的有效数字位数;对于整型数,它指定打印的数字位数(必要时可加填充位0以达到要求的宽度)
    举例

/字符/
char a[] = "abcdefg";
printf("a = %.4s\n", a);//指定打印的字符串最大个数为4
//结果:a = abcd
/e,f转换/
double a = 3.1415926;
printf("a = %.4f\n", a);//指定打印的小数点后的数字位数为4
//结果:a = 3.1416
/g,G转换/
double a = 0.000001234567;
printf("a = %.5g\n", a);//指定打印的有效数字位数为5
//结果:a = a = 1.2346e-06
/整型数/
int a = 123;
printf("a = %.4d\n", a);//指定打印的数字位数为4,不够用0填充
//结果a = 0123


###参考
[C程序设计语言(第2版.新版)](https://book.douban.com/subject/1139336/)222页
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 在JavaSe5中,推出了C语言中printf()风格的格式化输出。这不仅使得控制输出的代码更加简单,同时也给与J...
    三藏君阅读 4,196评论 0 0
  • 在python2中一直使用形如: “%s .... %d” % (str, ... , intNum)格式化字符串...
    MoraGG阅读 5,864评论 0 1
  • 本文为个人学习记录,对原作者文章进行了一些排版调整和修改,原文地址 ===> GoLove 的博客 格式化输出:将...
    Chaz6chez阅读 5,945评论 0 1
  • 用python处理数据时,不管是直接打印结果展示还是函数返回值,经常需要格式化输出,对于一些特殊的用法,偶尔会忘记...
    小蜗牛的成长阅读 5,163评论 0 0
  • 1. 作者:魏魏yuan 当得知李再湘老师退出“非常教师之星”的票选时,我有些惊讶,带着不解看了李老师的申明内容。...
    魏魏yuan阅读 4,104评论 0 1

友情链接更多精彩内容