32无符号整数转换成字符串

来源:互联网 发布:炫彩表白软件 编辑:程序博客网 时间:2024/04/28 10:40
#include<stdio.h>void u32tostr(unsigned int value, unsigned char * p_str){        const unsigned int base_tab[11]={1000000000,100000000,10000000,1000000,100000,10000,1000,100,10,1,0};        unsigned char count,index=0,base_index=0;        unsigned char flag=0;        char i,j;        while(base_tab[base_index])        {                if(value>=base_tab[base_index])                {                        p_str[index]=(unsigned char)(value/base_tab[base_index]);                        value-=p_str[index]*base_tab[base_index];                        p_str[index++]+='0';                        flag=1;                }                else if(flag)                {                        p_str[index++]='0';                }                base_index++;        }        p_str[index]=0;        if(index==0)        {                p_str[0]='0';                p_str[1]=0;                index=1;        }        for(count=0,i=index;i>0;i--)        {                if(count<3)//count=0,i向前移3位.count=1,i向前移2位.                {                        count++;                        continue;                }                for(j=index;j>=i;j--)                {                        p_str[j+1]=p_str[j];                }                p_str[i]=',';                index++;                count=1; //循环完成后i减去1。        }}void main(void){        unsigned int test=12345678;        unsigned char pinteger[]={'0',};        u32tostr(test,pinteger);        printf("%s\n",pinteger);}                                                                                                                                      1,1          顶端

原创粉丝点击