大学校园网

大学生活网 > 大学生学习 > 电气工程

阐述单片机中unsigned char转字符串有什么方法

片机中,常用到数字与字符的方法,在C中都是使用itoa函数,C51也有这个函数,但是,8051的RAM是很有限的,所以尽量避免使用int型,常用的是unsignedchar。当需要转换成字符串时用itoa的话,还是有点浪费。还是自力更生,自己写了一个,代码如下:

typedefunsignedcharBYTE;

BYTE*ByteToStr(BYTEn)

BYTEstr[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(n<10)

*pStr=n+'0';

pStr++;

*pStr=0;

returnstr;

用了5Byte内存,不知是否精简,先用着再说!String转unsignedchar的要反过来先减'0'再乘,不过要检查是否小于等于255。等写好了再放上来.