zoukankan      html  css  js  c++  java
  • 十六进制字符串转十进制整数

    十六进制字符串转十进制整数

    编写一个函数,函数接收一个字符串,是由十六进制数组成的一组字符串,函数的功能是把接到的这组字符串转换成十进制数字.并将十进制数字返回。

    #include <iostream>
    
    using namespace std;
    
    // 十六进制字符串的最大长度
    #define MAX_HEX_STR_LEN 8
    
    bool hexToDec(char shex[], int & idec)
    {
        size_t i = 0, len = 0;
        int mid = 0;
    
        len = strlen(shex);
        if (len > MAX_HEX_STR_LEN) {
            return false;
        }
    
        idec = 0;
        for (i = 0; i < len; i++) {
            mid = 0;
            if (shex[i] >= '0' && shex[i] <= '9') {
                mid = shex[i] - '0';
            } else if (shex[i] >= 'a' && shex[i] <= 'f') {
                mid = shex[i] - 'a' + 10;
            } else if (shex[i] >= 'A' && shex[i] <= 'F') {
                mid = shex[i] - 'A' + 10;
            } else {
                return false;
            }
    
            // 移位表示变为2的n次方倍
            mid <<= ((len - i - 1) << 2);
            idec += mid;
        }
        return true;
    }
    
    
    int main(int argc, char * argv[])
    {
        int a = 0;
        char s[] = "fae3";
        hexToDec(s, a);
        cout << a << endl;
    
        return 0;
    }
  • 相关阅读:
    Storm应用系列之——集成Kafka
    Storm常见模式——分布式RPC
    Storm常见模式——流聚合
    博客迁移
    设计模式学习笔记
    JStorm模型设计
    MySQL学习笔记
    JAVA学习笔记
    JavaScript学习笔记
    用ACE来写代码
  • 原文地址:https://www.cnblogs.com/lsgxeva/p/7944843.html
Copyright © 2011-2022 走看看