zoukankan      html  css  js  c++  java
  • 将整数转化为一个任意进制的字符串,将任意进制的字符串转化为一个整数的代码

        // 将整数转化为一个任意进制的字符串
        static void int_to_string(int value, char* szDest, int type = 10)
        {
            bool negative = false;
            if (value < 0)
            {
                negative = true;
                value = -value;
            }
    
            int index = 0;
            int nDecNum;
            char szTmp[128];
            memset(szTmp, 0, 128);
            while (value && index < 128)
            {
                nDecNum = value % type;
                value /= type;
                if (nDecNum < 10)
                {
                    szTmp[index] = '0' + nDecNum;
                }
                else
                {
                    szTmp[index] = 'A' + nDecNum - 10;
                }
                index++;
            }
    
            int pos = 0;
            if (negative)
            {
                szDest[pos] = '-';
                pos++;
            }
            for (int i = index - 1; i >= 0; i--)
            {
                szDest[pos] = szTmp[i];
                pos++;
            }
            szDest[pos] = 0;
        }
        static int GetNum(char c)
        {
            if (c >= '0' && c <= '9')
            {
                return c - '0';
            }
            else if (c >= 'a' && c <= 'z')
            {
                return c + 10 - 'a';
            }
            else if (c >= 'A' && c <= 'Z')
            {
                return c + 10 - 'A';
            }
            else
            {
                return -1;
            }
        }
    
        // 将任意进制的字符串转化为一个整数
        static bool string_to_int(const char* szSrc, int& value, int type = 10)
        {
            value = 0;
            int nDecNum;
            int len = (int)strlen(szSrc);
            int n = 1;
            for(int i = len - 1; i >= 0; i--)
            {
                nDecNum = GetNum(szSrc[i]);
                if (nDecNum == -1)
                {
                    return false;
                }
                value += nDecNum * n;
                n *= type;
            }
            
            return true;
        }
  • 相关阅读:
    js的包装对象
    js-原型
    js面向对象初识
    css3-3d
    用css制作三角形
    清浮动
    IE67下浮动元素margin-bottom值失效问题
    css圆角
    Use Memory Layout from Target Dialog Scatter File
    Qt QSting
  • 原文地址:https://www.cnblogs.com/WhyEngine/p/3517314.html
Copyright © 2011-2022 走看看