unsigned char 转字符串:
通常送显示的都是字符串,对于int long float转字符串有对应的函数,还有sprintf进行格式输出,对于嵌入式和单片机大多都用unsigned char型变量,转字符串需要自己编写函数,需要自己编写函数,一下是网上人写的一个函数。
unsigned char Dec2Asc(unsigned char input, char* output )
{
unsigned char ucLen;
unsigned char ucDiv;
//判断有效数字最高位
for ( ucDiv = 100; 1 < ucDiv; ucDiv /= 10 ){
if ( input / ucDiv ){
break;
}
}
//从有效数字最高位开始输出
for ( ucLen = 0 ; ucDiv; ucDiv /= 10 ){
*(output + ucLen) = input / ucDiv % 10 + 0x30;
ucLen++;
}
return ucLen;
}
或者
typedef unsigned char BYTE;
BYTE * ByteToStr(BYTE input,char *output)
{
BYTE len = 0;
if (input > 99)
{
*(output + len) = input/100 + '0';
input %= 100;
len++;
}
if (input > 9)
{
*(output + len) = input/10 + '0';
input %= 10;
len++;
}
if (input < 10)
{
*(output + len) = input + '0';
len++;
}
return len;
}