C语言避坑之%m.nf的理解

C语言里的%a.bf理解:
a是代表数据的宽度,而b则是代表保留数据小数点后几位(例如,12.33代表宽度为5,即a = 5,小数位为2,即b = 2,特别注意,小数点也算一个宽度的

接下来简单例子说明一下:
C语言避坑之%m.nf的理解_第1张图片
分别输出12.3,13.22,15.233三个数,
C语言避坑之%m.nf的理解_第2张图片
可见data1保留的宽度为10,所以在前面补空格来凑够10宽度,保留两位小数,所以在后面补0凑够两位小数,而像data2和data3这种本身宽度已经超过输出宽度的,可以忽略输出宽度 ,按自身的宽度输出,小数位依然按照输出小数来进行输出。(注意:如果输出小数位小于本身小数位的,按照四舍五入的原则进行取值)

你可能感兴趣的:(嵌入式软件工程师,c语言)