| 标记 |
五种标记(-、+、空格、#和0),可以不使用标记或者使用多个标记,示例:"%-10d" |
| 数字 |
最小字段宽度,如果该字段不能容纳待打印的数字或者字符串,系统会使用更宽的字段,示例:"%4d" |
| .数字 |
精度,对于%e,%E和%f转换,表示小数点右边数字的位数;对于%g和%G转换,表示有效数字的最大位数;对于%s转换,表示待打印字符的最大数量;对于整形装欢,表示待打印数字的最小位数;如果有必要,使用前导0来达到这个位数;只使用.表示其后跟随一个0,所以%.f和%.0f相同;示例:"%5.2f"打印一个浮点数,字段宽度为5字符,其中小数点后有两位数字 |
| h |
和整形转换说明一起使用,表示short int或者unsigned short int类型的值,示例:"%hu","%hx","6.4hd" |
| hh |
和整形转换说明一起使用,表示signed char或unsigned char类型的值。示例:"%hhu","%hhx","%hh6.4hhd" |
| j |
和整形转化一起使用,表示intmax_t或者uintmax_t类型的值,这些类型定义在stdint.h中,示例:"%jd","8jx" |
| l |
和整形转换说明一起使用,表示long int或则和unsigned long int类型的值,示例:"%ld","%8lu" |
| ll |
和整形转换说明一起使用,表示long long int 或unsigned long long int类型的值,示例:"%lld","%8llu" |
| L |
和浮点转换说明一起使用,表示long double类型的值,示例:"%Lf","10.4Le" |
| t |
和整形转换说明一起使用,表示ptrdiff_t类型的值,ptrdiff_t是两个指针差值的类型,示例:"%td","%12ti" |
| z |
和整形转换说明一起使用,表示size_t类型的值,size_t是sizeof返回的类型,示例:"%zd","%12zd" |