参考代码 char k[10]; //这里不能加code限定符,否则计算不正确,数组长度随意,不出错就可以 char a; sprintf(k,"%.1f",Data_Send); //把浮点数据分割成字符串,并存放在k数组中,"%.1f"的2f表示小数点后再显示1位数,不显示小数就是0f for(a=0;(k[a]!='\0');a++) { Send_Out_COM(k[a]); //这个是我自己写的串口发送函数 } |
如同豪华超跑的sprintf,是一般人驾驽不了的,太烧油。功能强大,但小身板的单片机最好别用它。 你看一下把它注释掉,前后编译对比一下花费的空间,就能发现问题了。 ![]() |
单片机那点儿内存根本实现不了完整的sprintf函数,都是删减版本的,能自己写就不要用标准库函数。 |