printf输出格式总结

1) 整数
  • %d  整数的参数会被转成有符号的十进制数字
  • %u  整数的参数会被转成无符号的十进制数字
  • %o  整数的参数会被转成无符号的八进制数字
  • %x  整数的参数会被转成无符号的十六进制数字,并以小写abcdef 表示
  • %X  整数的参数会被转成无符号的十六进制数字,并以大写ABCDEF 表示浮点型数
  • %f double  型的参数会被转成十进制数字,并取到小数点以下六位,四舍五入
  • %e double  型的参数以指数形式打印,有一个数字会在小数点前,六位数字在小数点后,而在指数部分会以小写的e 来表示
  • %E 与%e 作用相同,唯一区别是指数部分将以大写的E 来表示
  • %g double  型的参数会自动选择以%f 或%e 的格式来打印,其标准是根据打印的数值及所设置的有效位数来决定。
  • %G 与%g 作用相同,唯一区别在以指数形态打印时会选择%E 格式。

2) 字符及字符串
  • %c 整型数的参数会被转成unsigned char 型打印出
  • %s 指向字符串的参数会被逐字输出,直到出现NULL 字符为止
  • %p 如果是参数是"void *"型指针则使用十六进制格式显示