printf动态长度/大小

时间:2012-07-11 11:27:53

标签: c

我正在尝试为lcd创建动态printf大小,但它只输出f =我做错了什么?

sprintf(buffer, "f=%.2f",  (d = d + 0.01)); <-- works but not dynamic 

sprintf(buffer, "f=%.*f", 2 , (d = d + 0.01));  <-- Does not any give warning

lcd_puts(buffer);


_delay_ms(100);

1 个答案:

答案 0 :(得分:1)

可能你需要这个:

char format[10];
int len1 = 5, len2 = 2;
sprintf(format, "f=%%%d.%df", len1, len2);
sprintf(buffer, format , (d = d + 0.01));