单片机中unsigned char转字符串的方法
时间:12-02
来源:互联网
点击:
在单片机中,常用到数字与字符的方法,在C中都是使用itoa函数,C51也有这个函数,但是,8051的RAM是很有限的,所以尽量避免使用int型,常用的是unsigned char。当需要转换成字符串时用itoa的话,还是有点浪费。还是自力更生,自己写了一个,代码如下:
typedef unsigned char BYTE;
BYTE * ByteToStr(BYTE n)
{
BYTE str[4];
BYTE * pStr;
pStr = str;
if (n>99)
{
*pStr = n/100;
n %= 100;
*pStr += '0';
pStr ++ ;
*pStr = n/10;
n %= 10;
*pStr += '0';
pStr ++ ;
}
if (n>9)
{
*pStr = n/10;
n %= 10;
*pStr += '0';
pStr ++ ;
}
if (n10)
{
*pStr = n + '0';
pStr ++;
}
*pStr = 0;
return str;
}
用了5Byte内存,不知是否精简,先用着再说!String 转 unsigned char的要反过来先减'0'再乘,不过要检查是否小于等于255。等写好了再放上来.
单片机中unsigned char 字符串 相关文章:
- 利用FPGA实现外设通信接口之: 典型实例-字符LCD接口的设计与实现(06-05)
- getchar()和EOF总结(11-28)
- getchar()使用时遇到的数据类型错误(11-28)
- getchar()使用时出现跳跃取字的问题(11-28)
- C语言中char int转换问题(11-27)
- USB字符串描述符(12-12)