首页 > IT职业 > IT职场 > 物联网学习教程——格式输入与输出
(一)格式输出函数
函数作用:向终端(或系统隐含指定的输出设备)输出若干个任意类型的数据。
一般格式:printf(格式控制,输出表列)
%d:以带符号的十进制形式输出整数
%o:以八进制无符号形式输出整数
%x:以十六进制无符号形式输出整数
To be continued……
%u:以无符号十进制形式输出整数
%c:以字符形式输出,只输出一个字符
%s:输出字符串
%f:以小数形式输出单,双精度数,隐含输出六位小数
%e:以指数形式输出实数
%g:选用%f或%e格式中输出宽度较短的一种格式,不输
出无意义的0
几种常见的格式符的修饰符:
L:用于长整型整数,可加在格式符d,o,x,u前面
M(代表一个正整数):数据最小宽度
N(代表一个正整数):对实数,表示输出n位小数;
对字符串,表示截取的字符个数
—:输出的数字或字符在域内向左靠
d格式符。用来输出十进制整数。
几种用法:
①%d:按十进制整型数据的实际长度输出。
②%md:m为指定的输出字段的宽度。如果数据的位数小于m,
则左端补以空格,若大于m,则按实际位数输出。
例:printf(″%4d,%4d″,a,b);
若a=123,d=12345,则输出结果为
123,12345
③%ld:输出长整型数据。
例:longa=135790;/*定义a为长整型变量*/
printf(″%ld″,a);
(2)o格式符。以八进制整数形式输出。
输出的数值不带符号,符号位也一起作为八进制数的一部分输出。
例:int a=-1;
printf("%d,%o",a,a);
-1在内存单元中的存放形式(以补码形式存放)如下:
1111111111111111
输出为:
-1,177777
不会输出带负号的八进制整数。对长整数(long型)可以
用“%lo”格式输出。还可以指定字段宽度。
例:printf("%8o",a);
输出为:177777。(数字前有2个空格)
(3)x格式符。以十六进制数形式输出整数。同样不会出
现负的十六进制数。
例:inta=-1;
printf(″%x,%o,%d″,a,a,a);
输出结果为:
ffff,177777,-1
可以用“%lx”输出长整型数,也可以指定输出字段的宽度。
例:“%12x”
(4)u格式符,用来输出unsigned型数据。
一个有符号整数(int型)也可以用%u格式输出;
一个unsigned型数据也可以用%d格式输出;
unsigned型数据也可用%o或%x格式输出。
(5)c格式符,用来输出一个字符。
如:chard=′a′;
printf(″%c″,d);
输出字符′a′.
一个整数,只要它的值在0~255范围内,可以用
“%c”使之按字符形式输出,在输出前,系统会将该整数
作为ASCII码转换成相应的字符;一个字符数据也可以用
整数形式输出。
例4.3无符号数据的输出。
#include<stdio.h>
void main()
{
unsigned int a=65535;int b=-2;
printf(“a=%d,%o,%x,%u\n”,a,a,a,a);
printf(“b=%d,%o,%x,%u\n”,b,b,b,b);
}
运行结果:
a=-1,177777,ffff,65535
b=-2,177776,fffe,65534
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69914734/viewspace-2656717/ ,如需转载,请注明出处,否则将追究法律责任。