zoukankan      html  css  js  c++  java
  • atoi和itoa函数的实现方法

    atoi的实现

    #include<iostream>

    using namespace std;

    int atio1(char *s)

    {

    int sign=1,num=0;

        if(*s=='-')

            sign=-1;

        s++;

        while((*s)!='')

        {

            num=num*10+(*s-'0');

            s++;

        }   

        return num*sign;   

    }

     

     

    itoa的实现

    1:

    void itoa(int value, char *str)

    {   

     if (value < 0)                                                       //如果是负数,则str[0]='-',并把value取反(变成正整数)  

        {        

        str[0] = '-';        

        value = 0-value;   

        } 

    int i,j;    

    for(i=1; value > 0; i++,value/=10)                         //从value[1]开始存放value,不过是逆序          

           str[i] = value%10+'0';                                    //将数字加上0的ASCII值(即'0')得到ASCII值   

     for(j=i-1,i=1; j-i>=1; j--,i++)                                 //将数字字符反序存放   

       {       

        str[i] = str[i]^str[j];        

        str[j] = str[i]^str[j];        

        str[i] = str[i]^str[j];   

       }    

    if(str[0] != '-')                                                         //如果不是负数,则需要把数字字符下标左移一位 

       {       

         for(i=0; str[i+1]!=''; i++)           

         str[i] = str[i+1];     

         str[i] = '';   

       }

    }

     

    法2:

    char *itoa(int num, char *str, int radix)

    {

        char* ptr = str;

        int i;

        int j;

        while (num)

        {

            *ptr++  = string[num % radix];

            num    /= radix;

            if (num < radix)

            {

                *ptr++  = string[num];

                *ptr    = '';

                break;

            }

        }

        j = ptr - str - 1;

        for (i = 0; i < (ptr - str) / 2; i++)

        {

            int temp = str[i];

            str[i]  = str[j];

            str[j--] = temp;

        }

        return str;

    }

     

     

     

  • 相关阅读:
    MongoDB安装&启动
    MongoDB集群搭建
    树与二叉树
    git入门
    MongoDB Java Driver
    Spring整合Junit4
    SQL字符串的数字部分递增
    [求职经历反面教材]4周面试20家,面霸磨成面瘫,仅供初级程序员参考!
    简陋的信息采集方式
    由一个博问学到的SQL查询方法 (一道多对多关系查询的面试题)
  • 原文地址:https://www.cnblogs.com/xuhj001/p/3427670.html
Copyright © 2011-2022 走看看