这个调试经常用 keil带的printf系的 不太好用 自己写了一个 给以后做个参考
char* numtostring(uint16_t num,char *p) //无符号整型转字符串
{
char temp[20] = {0};
int i = 0;
char *s= p;
do{
temp[i++] = num%10 +'0';
num = num /10;
}while(num != 0);
i--;
while(i >= 0)
{
*s++ = temp[i--];
}
*s = '\0';
return p;
}
char* floattostring(float num,char *s) //浮点转字符串
{
char p[20]={0};
char p2[10]={0};
uint8_t i =0;
uint8_t t = 0;
uint8_t flag = 0;
uint16_t integ;
if(num < 0)
{
num = num*(-1);
flag = 1;
}
integ = num;
numtostring(integ,p);
num = (num - integ)*10000;
integ = num;
numtostring(integ,p2);
if(flag)
{
s[i++] = '-';
}
do{
s[i++] = p[t++];
}while(p[t] != '\0');
s[i++] = '.';
t = 0;
do{
s[i++] = p2[t++];
}while(p2[t] != '\0');
s[i] = '\0';
return s;
}