我正在尝试以]的形式转换十六进制字符串>
std::string mystring = "00A4040C06FF5142534014";
给BYTE,形式为:
BYTE cmd2[] = {0x00, 0xA4, 0x04, 0x0C, 0x06, 0xFF, 0x51, 0x42, 0x53, 0x40, 0x14};
我尝试使用以下功能:
std::vector<char> HexToBytes(const std::string& hex) { std::vector<char> bytes; for (unsigned int i = 0; i < hex.length(); i += 2) { std::string byteString = hex.substr(i, 2); char byte = (char) strtol(byteString.c_str(), NULL, 16); bytes.push_back(byte); } return bytes; }
但是这并没有给我正确的转换。也许有人可以帮助我?
我正在尝试以std :: string mystring =“ 00A4040C06FF5142534014”的形式转换十六进制字符串;格式为BYTE cmd2 [] = {0x00,0xA4,0x04,0x0C,0x06,0xFF,0x51,0x42,0x53,...
[如果我想举一个最小的例子,它将看起来像以下内容:
[std::vector<char>
到const unsigned char*
没有隐式转换。