用C++将六进制字符串转换为字节
Convert a hexstring to byte in C++
我有一个十六进制字符串,如下所示:
char hexString = "1a";
我想把它转换成BYTE,这样它看起来像这样:
BYTE Anything[0x10] = { 0x1a };
在对流之后。我需要对16个字符串这样做,这样我就可以在的末尾看到这样的东西
BYTE Anything[0x10] = { hexToByte(hexString1), hexToByte(hexString2), 16 times };
任何想法,因为我不知道怎么做!
BYTE Anything[0x10] = {
(BYTE)std::stoul(hexString1, nullptr, 16),
(BYTE)std::stoul(hexString2, nullptr, 16), ... };
只有256个值。。。。足够小,可以在数组中查找。
int hexToByte(const char* strHex)
{
char* array[] = {"00", "01", "02", "03", "04", "05", "06", "07",
"08", "09", "0A", "0B", "0C", "0D", "0E", "0F",
"10", "11", "12", "13", "14", "15", "16", "17",
"18", "19", "1A", "1B", "1C", "1D", "1E", "1F"
/* Fill in the rest, up to FF */};
int i;
for(i=0; strcmp(strHex,array[i]); ++i) ;
return i;
}
相关文章:
- 如何将包含epoch时间的十六进制字符串转换为time_t
- 当字符串存储在变量中时,如何将字符串转换为wchar_t
- 如何将这个std::字符串转换为std::基本字符串
- 如何正确将字符串转换为标准::时间::system_clock::time_point?
- 如何在C++中将十六进制字符串转换为文本数据
- 需要帮助在 c++ 中将字符串转换为字符 ----错误 "const char *" 类型的值不能用于初始化 "char" 类型的实体
- 如何从字符串转换为双精度*
- C++:如何将 unix 时间的字符串转换为 *tm?(使用时间错误:"cannot convert 'String' to 'tm*' ")
- 如何在C++中将 Python 字符串转换为其转义版本?
- 如何在 C++11 中将标准::字符串转换为标准::u32字符串?
- 如何将整数字符串转换为整数的二维向量?
- 使用 "stringstream " 将字符串转换为整数
- 将字符串转换为浮点数或整数,而无需使用内置函数(如 atoi 或 atof)
- 将文件复制到自定义位置,存在字符串转换问题
- 将ANSI C字符串转换为UNICODE
- 如何将节点 V8 字符串转换为 C++ 字符串
- 在C++中将字符串转换为双精度,而无需科学记数法
- 使用从文件(stod、strtod、atof)中提取的数据C++从字符串转换为双精度.csv
- 如何在C++中将字符串转换为双精度?
- 将字符串转换为无符号字符数组/字节数组