前言:C语言中printf经常被用来输出各种调试信息,对于字符串常量输出,简单使用一对""
就可以达到目的,例如:printf("hello,world!\n");
.而关于数据的格式化输出就各有千秋,下面整理了它经常用的格式化输出语句,不常用的就不记录了,以免增加记忆负担。
类型
1.十六进制输出
printf没有打印二进制数据的格式,只有打印十六进制数据的格式:%X/x
-
1.1字母大写输出—%X
形式为printf("output data:%X",data);
,十六进制中出现的字母为ABCD等大写字母。 -
1.2字母小写输出—%x
形式为prrintf("output data:%x",data);
,十六进制中出现的字母为abcd等小写字母。
2.十进制输出
有符号的十进制整数值用%d表示,形式为prrintf("output data:%d",data);
。
3.字符串变量输出
&esmp;字符串常量用%s表示,传入的变量为该字符串的首地址。该函数会打印字符串中的每个字符,直到遇到结束字符'\0'为止。形式为prrintf("output data:%s",dataArray);
.
精度
精度往往和类型搭配一起使用加上前缀一个点号.
1. 数值类型
对于16进制或者十进制数据类型来说,精度指定要写入的最小位数。若写入的值比此数短,则写入值以前导0填充。比如:prrintf("output data:%.2d",data);
,data
只有个位数9,显示结果为09
。若写入值比此数长,该值也不会被截断。
2.字符串类型
对于字符串类型%s
来说,默认情况下打印所有字符,知道遇到结束符'\0'。加上精度后表示要打印的最大字符数,例如:printf("%.3s\n",chrArray);
表示打印开始的3个字符,若原字符不满3个字符,则将原字符串完全打印。
如果您觉得有帮助,请给我一个赞。
您的鼓励是我前进的动力(๑‾ ꇴ ‾๑)。