C++ 将字符串转换为字节(无符号字符)数组cpp

C++ 将字符串转换为字节(无符号字符)数组cpp,c++,hex,C++,Hex,在这个简单的问题上遇到了真正的麻烦。 我有这样一个字符串: std::string msg = "00 00 00 00 00 06 01 05 00 FF 00 00"; std::istringstream buffer(msg); std::vector<unsigned char> bbuffer; unsigned int ch; while (buffer >> std::hex >> ch) bbuffer.push_back(ch

在这个简单的问题上遇到了真正的麻烦。 我有这样一个字符串:

std::string msg = "00 00 00 00 00 06 01 05 00 FF 00 00";
std::istringstream buffer(msg);

std::vector<unsigned char> bbuffer;

unsigned int ch;
while (buffer >> std::hex >> ch)
    bbuffer.push_back(ch);
我想:

unsigned char bbuffer[12] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x01, 0x05, 0x00, 0xFF, 0x00, 0x00 };

怎么做

如果可能的话,我建议使用std::vector而不是实际的数组

用这个,我想我会做这样的事情:

std::string msg = "00 00 00 00 00 06 01 05 00 FF 00 00";
std::istringstream buffer(msg);

std::vector<unsigned char> bbuffer;

unsigned int ch;
while (buffer >> std::hex >> ch)
    bbuffer.push_back(ch);

但是向量通常更可取。

如果可能的话,我建议使用std::vector而不是实际的数组

用这个,我想我会做这样的事情:

std::string msg = "00 00 00 00 00 06 01 05 00 FF 00 00";
std::istringstream buffer(msg);

std::vector<unsigned char> bbuffer;

unsigned int ch;
while (buffer >> std::hex >> ch)
    bbuffer.push_back(ch);

但是向量通常更可取。

我离得太近了!下次我会找到你;太好了。不管怎样,我在内部使用vector,我离得太近了!下次我会找到你;太好了。我在内部使用vector