我是靠谱客的博主 知性服饰,最近开发中收集的这篇文章主要介绍输出函数——printf注意事项,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

域宽:

可以在格式声明中指定输出数据的域宽(所占的列数),如用 “%5d”,指定输出数据所占 5 列,输出的数据显示在此 5 列区域的左侧。如:

printf("%5dn%5dn",12,-345);
输出结果为:
12 ( 12 前面有 3 个空格)
-345 (-345前面有1个空格)
其他任何输出格式均可以指定域宽,如%c、%f、%s。

输出字符时:

一个整数,如果在 0-127 范围中,也可以用 “%c” 使之按字符形式输出,在输出前,系统会将该整数作为 ASCLL 码转换成相应的字符;

short a = 121;
printf("%c",a);
输出字符y,如果整数比较大,则把它最后一个字节的信息一字符形式输出。如: int a = 377; y 存储形式:00000000 00000000 00000000 01111001
printf("%c",a);
可见最后一个字节为 01111001,即十进制的 121,它是 ‘y’ 的ASCLL代码。

f 格式符

1)基本型 %f(没得讲,不讲了)
2)指定数据宽度和小数位数,用%m.nf
m指的是输出的数据占 m 列(包括小数、小数点),n 指的是小数占 n 列。
例如:printf("%20.15fn",a/3);     输出的结果占 20 列(包括小数、小数点),小数占 15 列。
3)输出的数据向左对齐,用%-m.nf
在 m.n 的前面加一个负号,其作用与 %m.nf 形式作用基本相同,但当数据长度不超过m 时,数据向左靠,右端补空格。如:
printf("%-25.15f,%25.15fn",a,a);
第一次输出 a 时输出结果向左端靠,右端空 5 列。第二次输出 a 时输出结果向右端靠,左端空 5 列。

g格式符:

	用来输出浮点数,系统自动选 f 格式或 e 格式输出,选择其中长度较短的格式,不输出无意义的 0。如:
	double a = 12345678954321;
	printf("%ft%et%gn",a,a,a);
	输出之后可以看到 %f 格式输出占 21 列,用 %e 格式输出占 13 列,故 %g 采用 %e 格式输出。

还有 e 格式符、i 格式符、o 格式符、x 格式符、u 格式符,翻书去!

printf函数中用到的格式字符和格式附加字符

格式字符说明
d,i以带符号的十进制形式输出整数(正数不输出符号)
o以八进制无符号形式输出整数(不输出前导符 0 )
x,X以十六进制无符号形式输出整数(不输出前导符 0x),用 x 则输出十六进制数的 a~f 时以小写形式输出,用 X 时,则以大写字母输出
u以无符号十进制形式输出整数
c以字符形式输出,只输出一个字符
s输出字符串
f以小数形式输出单、双精度数,隐含输出 6 位小数
e,E以指数形式输出实数,用 e 时指数以 ”e“ 表示(如 1.2e+02),用 E 时指数以 ”E“ 表示(如 1.2E+02)
g,G选用 %f 或 %e 格式中输出宽度较短的一种格式,不输出无意义的 0。用 G 时,若以指数形式输出,则指数以大写表示
l长整型整数,可加在格式符 d、o、x、u 前面
m(代表一个正整数)数据最小宽度
n (代表一个正整数)对实数,表示输出 n 位小数;对字符串,表示截取的字符个数
输出的数字或字符在域内向左靠

最后

以上就是知性服饰为你收集整理的输出函数——printf注意事项的全部内容,希望文章能够帮你解决输出函数——printf注意事项所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(49)

评论列表共有 0 条评论

立即
投稿
返回
顶部