不用库函数,用C语言实现将一整型数字转化为字符串

void ConverInt2Str(int n, char* dest)
{
int nCount=0;
int value=n, temp=0, digit=0;
char strTemp[256];
int i=0, j=0;
while (true) {
digit=value%10;
strTemp[i++]=digit+'0';
value=value/10;
if (value==0) {
break;
}
}
nCount=i;
for (i=nCount-1; i>=0; i--) {
dest[j++]=strTemp[i];
}
dest[j]='\0';

}








#include <iostream>
#include <cstdlib>
using std::cout;
using std::endl;
const char* itoa(long i, char * str)
{
        long long tmp =1;
        int  n =1;
        const char * p =str;
        if(!str ) return NULL;
        for(int x =1; x; x++)
        {
                if( tmp >= i) break;
                tmp *= 10;
        }

        if(tmp != i) tmp /= 10;
        for(; tmp; tmp /= 10)
        {
                n = i /tmp;
                *str++ = '0' +n;
                i -= tmp *n ;
        }
        //*str++ ='0' + n;
        *str = 0;
        return p;
}
int main(int argc , char **argv)
{
        char str[256];
        if(argc < 2) exit(1);
        cout<<"origin:"<<argv[1]<<endl;
        cout<<"number:"<<atoi(argv[1])<<endl;
        cout<<"transform:"<<itoa(atoi(argv[1]), str)<<endl;
        exit(0);
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值