1. 限定占位符的最小宽度
例如 printf("%6d\n",123) 是限制输出内容的最小宽度为6位,若不满6位,就会在输出内容前面添加空格。
若要在输出内容的后面添加空格,在%号后面加一个 - 号即可。
若输出内容的宽度超过限制的宽度,则不会有任何影响,该输出多少就是多少。
所以%6d(%-6d),只是限制最小宽度为6位,超过这个宽度就不会对输出内容有影响。
对于小数也是同理,printf("%10f\n",8.7) 由于小数默认精度为小数点后6位,所以会在输出内容前面添加两个空格。
printf("%-10f\n",8.7) 在后面加两个空格
2.限定小数的位数
小数默认精度为小数点后6位,以限定小数位数为2为例,占位符要写成%.2f, 例如printf("%.2f\n",1.1)
3.同时限定
限定小数和限定宽度可以同时使用
printf("%8.3f\n",1.12) 限定最小宽度为八位,小数位数限定为3位。
另外最⼩宽度和⼩数位数可以用 * 代替
4.显示正负号
printf默认不会显示正数的+号,会显示负数-号,想显示正数+号可以在%号后面加+。
5.打印字符串时指定长度
printf在打印字符串时,可以指定长度。例如只打印前三个字符,printf("%.3s\n","hahahaha") 结果就是hah。