具有双重格式问题的Printf

时间:2010-08-16 19:25:49

标签: c formatting double printf

我有以下printf语句:

printf("val=%-4.2lf", val);

但是,val永远不会填充空格,因此如果小数点前有3位或4位数,则val占用的空间不同。格式说明符中的4不应该保证至少有4个空格吗?

很抱歉这个新问题,但令我感到沮丧。

1 个答案:

答案 0 :(得分:4)

4指定最小字段 - 您还有小数点和小数点后的2位数,这4个字符的字段宽度中至少包含3个字符。

因此,如果您希望小数点前的最小字段宽度为4个字符,则需要使用%-7.2lf格式。