标准输出(格式化输出):
概念:屏幕(终端)对应的就是标准输出的设备文件,如果往该文件中输出内容则可以成为标准输出。
printf();
注意语法点:
% 必须有的,格式化的开头标记
- 对齐的方式, 向左对齐(空格在右) ,如果没有则是向右对齐(空格在左)
m.n m指的域宽(需要的字符数), n 指的是精度(默认精度为6)
m 的值如果比实际数据小则按实际输出, 反之则用空格来填补
l 指的是 long 表示长整型
h 指的是短整型
格式控制符:
十进制的整型: %d %md %ld %u (无符号) %lu
八进制: %o %#o # --> 输出进制的符号
十六进制: %x %#x %#X
字符: %c
字符串: %s
单精度浮点: %f %.nf --> n 表示精度
双精度: %lf
长双精度 : %Lf
地址: %p
getconf INT_MAX 获取宏INT_MAX的大小
#include<stdio.h>
#include<unistd.h>
int main()
{
while (1)
{
sleep(1);
printf("Hello !\n");//\n 1.换行,2.刷新缓冲区, 标准输出文件默认使用缓冲区,当缓冲区满的时候会打印,或者遇到其他语句刷新或者程序正常退出
sleep(1);
printf("%s %s %d\n",__FILE__,__FUNCTION__,__LINE__);//FILE,文件名 FUNCTION函数名称 LINE列名
printf("%10d\n",100);//%n n位宽 n>实际长度会加空格 <输出实际长度
printf("%-10d\n",100);//%n n位宽 -左对齐
printf("%d %o %x\n",0123,0123,0123);
printf("%#d %#o %#x\n",0123,0123,0123);
printf("%-5.3f\n",123.45f);//位宽5,大于不管,小于补空格字符,保留小数点3位:123.450
}
return 0;
}
评论