C++实现十六进制字符串转换成int整形值的示例
2019-01-15 00:03
459 查看
十六进制(简写为hex或下标16)在数学中是一种逢16进1的进位制。一般用数字0到9和字母A到F(或a~f)表示,其中:A~F表示10~15,这些称作十六进制数字。
开发中经常需要把16进制字符串转换成整形,写了个个代码供大家参考下:
#include <stdio.h> #include <string.h> //字符转换成整形 int hex2int(char c) { if ((c >= 'A') && (c <= 'Z')) { return c - 'A' + 10; } else if ((c >= 'a') && (c <= 'z')) { return c - 'a' + 10; } else if ((c >= '0') && (c <= '9')) { return c - '0'; } } int main() { //十六进制字符串转换成整形 const char* hexStr = "EFA0"; int data[32] = {0}; int count = 0; for (int i=0; i<strlen(hexStr); i+=2) { int high = hex2int(hexStr[i]); //高四位 int low = hex2int(hexStr[i+1]); //低四位 data[count++] = (high<<4) + low; } //打印输出 for (int i=0; i<strlen(hexStr)/2; i++) { printf("%d ", data[i]); } return 1; }
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对脚本之家的支持。如果你想了解更多相关内容请查看下面相关链接
您可能感兴趣的文章:
相关文章推荐
- C++实现16进制字符串转换成int整形值
- 十六进制字符串转换成十进制整数的C++实现源代码
- C/C++实现控制台密码隐藏和字符串转换为整形
- C++实现十六进制字符串转换为十进制整数的方法
- 在delphi中,如何把十进制数转换为十六进制整形数。若用inttohex只能转化为十六进制字符串。
- C/C++中int/long/float/double数值类型与字符串互相转换
- 二进制值和十六进制字符串相互转换的C++代码
- C语言实现字节流与十六进制字符串的相互转换
- 十六进制字符串 转换为 整形
- C++实现二进制、八进制、十进制、十六进制的相互转换
- [C/C++]_[十六进制字符串转换数值并写入文件]
- C/C++中int/long/float/double数值类型与字符串互相转换[总结]
- 二进制值和十六进制字符串相互转换的C++代码
- c++编写递归函数char *itostr (int n,char *string),该函数将整数n转换为十进制表示的字符串。
- 实现string toHex(int)把一个十进制转换成十六进制。(完全用算法实现)
- C++ 整形和字符串之间的转换
- Java编程实现对十六进制字符串异或运算代码示例
- C语言实现字节流与十六进制字符串的相互转换
- c++ 字符串与int,long ,double间的转换
- C语言实现字节流与十六进制字符串的相互转换