这两个函数都存在于#include<stdio.h>中,它们的输出输入类型如下:
%d(对应int):输出类型为有符号的十进制整数
%ld(对应long/long long):输出类型为有符号的十进制整数
%o(对应unsigned int):输出类型为无符号八进制整数(没有前导 0)
%u(对应unsigned int):输出类型为无符号十进制整数
%f(对应float):输出类型为有符号的十进制浮点数(小数)
%lf(对应double):输出类型为有符号的十进制浮点数(小数)
%e(对应double):输出类型为科学计数法表示的数
%g(对应double):根据数值不同自动选择 %f 或 %e
%c(对应char):输出类型为字符型
%s(对应string或char*):输出类型为字符串
%p(对应void*):以16进制形式输出指针
温馨提示:可以在"%"和字母之间插进数字表示最大场宽
如: %5d 表示输出5位整型数
%7.3f(%lf同理) 表示输出场宽为9的浮点数,其中小数位为2, 整数位为6(小数点占一位)
%8s 表示输出8个字符的字符串
如果字符串的长度、整型数位数超过说明的场宽,将按其实际长度输出。
对于浮点数, 若整数部分位数超过了说明的整数位宽度,将按实际整数位输出,若小数部分位数超过了说明的小数位宽度,则按说明的宽度以四舍五入输出。
所以,对于以上类型,限制的场宽从意义上来说基本没用,不过对于%f和%lf来说可以限制浮点数的小数位。如果只限制小数位的话,可以这么写:%.2f,表示打印小数点后两位
如有疑问欢迎私信或评论区留言!