c语言printf函数可以中途换行吗?
可以的。system.out.println();ln代表换行,不换行的输出语句为system.out.print()。
减号结果左对齐,右边填空格。默认是右对齐,左边填空格。+加号输出符号(正号或负号)space空格输出值为正时加上空格,为负时加上负号#井号type是o、x、X时,增加前缀0、0x、0X。
type是a、A、e、E、f、g、G时,一定使用小数点。默认的,如果使用.0控制不输出小数部分,则不输出小数点。
type是g、G时,尾部的0保留。0数字零将输出的前面补上0,直到占满指定列宽为止(不可以搭配使用“-”)。
示例:
printf("%5d\n",1000); //默认右对齐,左边补空格
printf("%-5d\n",1000); //左对齐,右边补空格
printf("%+d %+d\n",1000,-1000); //输出正负号
扩展资料
1、printf在VC++中默认关闭缓冲区,且只能设置全缓冲。输出时会及时的输到屏幕。因为微软闭源,所以无法研究printf函数的实现源码。
2、在printf的实现中,在调用write之前先写入IO缓冲区,这是一个用户空间的缓冲。系统调用是软中断,频繁调用,需要频繁陷入内核态,这样的效率不是很高,而printf实际是向用户空间的IO缓冲写,在满足条件的情况下才会调用write系统调用,减少IO次数,提高效率。