格式说明符,用于更改前导零的大小

时间:2019-07-30 20:10:04

标签: c printf format-specifiers

我当时想解决以下问题,然后我遇到一个问题,就是我无法在Google上找到答案。

问题:是否可以在printf()的另一个格式说明符内使用格式说明符?

问题在于以下代码行中printf()中前导零的大小:

uint16_t num=5;
printf("%02d",num);

是否可以为“ 2”使用格式说明符? 如何根据不同的条件(例如%02d,%03d,%04d等)调整程序中前导零的大小?除了定义不同的类别和不同的printf()行之外,是否可以在此处使用技巧?除了printf(),还有其他功能可以解决该问题吗?

1 个答案:

答案 0 :(得分:5)

是的,有可能。请参见*的{​​{1}}宽度说明符。示例:

printf

...打印:

printf("%0*d\n", 5, 2);