printf动态长度/大小

printf动态长度/大小

问题描述:

我想为液晶显示器创建一个动态的printf大小,但它只输出f =我做错了什么?printf动态长度/大小

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); 
+0

它看起来是正确的,并在这里工作 – perreal 2012-07-11 11:34:19

也许你需要这个:

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