原创 十进制数转换为字符串(ascii)函数

2011-3-25 16:00 9339 13 13 分类: MCU/ 嵌入式

const unsigned int DAT_Add_TAB[10] = {1,10,100,1000,10000,100000,1000000,10000000,100000000,1000000000};
const unsigned int BIN_TO_Char_TAB[11] = {0,9,99,999,9999,99999,999999,9999999,99999999,999999999,0xffffffff};


void bin_to_char(unsigned int Dat,char *Ptr,int Num)
{
    int i,j;
    if(Dat > BIN_TO_Char_TAB[Num]) Dat = BIN_TO_Char_TAB[Num];
    for(i=1;i<=Num;i++)
    {
     for(j=0;Dat >= DAT_Add_TAB[Num-i];j++)
     {
     Dat -= DAT_Add_TAB[Num-i];
     }
        *Ptr++ = j + '0';
    }
    *Ptr = 0;
}

 

Dat:要转换的数据

Ptr:输出的字符串指针

Num:需要转换的位数


*重要声明*

函数作者:powerint   人称“抛”,擅长于fpga,dsp,arm等弱电编程器件系统设计,以及igbt等的强电推动器件的应用。

文章评论0条评论)

登录后参与讨论
我要评论
0
13
关闭 站长推荐上一条 /2 下一条