通常送顯示的都是字符串,對於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;
}
