十六进制字符串转十进制整数
2017-12-01 23:19
204 查看
十六进制字符串转十进制整数
编写一个函数,函数接收一个字符串,是由十六进制数组成的一组字符串,函数的功能是把接到的这组字符串转换成十进制数字.并将十进制数字返回。
#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; }
相关文章推荐
- Java编程题:将一个十六进制的字符串转换成一个十进制的整数
- 整数转字符串(十进制/十六进制)
- QT QString 十六进制整数变为字符串自动补0 && 十进制补零
- 字符串处理函数:识别一字符串所属的数值常量类型(十六进制、二进制、十进制整数,浮点数)
- C++实现十六进制字符串转换为十进制整数的方法
- QT 十六进制整数变为字符串自动补0 && 十进制补零
- C# 判断字符串是否符合十六进制,八进制,二进制和十进制整数格式的正则表达式
- 将十进制整数转化为十六进制字符串形式
- QT 十六进制整数变为字符串自动补0 && 十进制补零
- 输入一个表示十六进制的字符串,转换为十进制的整数输出。
- 十六进制字符串转十进制整数,诡异的问题,Linux和Windows结果不同
- 字符串处理函数:识别一字符串所属的数值常量类型(十六进制、二进制、十进制整数,浮点数)
- C语言中字符串如何转换为二进制、八进制、十进制、十六进制
- 字符串转换为NSdata数据/十进制转换为十六进制
- ios十进制、十六进制字符串,byte,data等之间的转换
- Objective-C十六进制字符串转为十进制
- 将十六进制字符串转换成十进制数字
- 关于字符串转二进制、八进制、十进制、十六进制等的函数
- 十进制正整数转十六进制(Java实现)
- 将十六进制转成十进制字符串显示