string temp;
temp = line.substr(0, pos);
我需要将字符串temp转换为无符号字符数组。 请问有人能告诉我如何做到这一点吗? 我尝试了下面链接中提到的方法,但它们没有起作用。 如何在Visual C++中将字符串文字转换为无符号字符数组
unsigned char* val=new[temp.size() + 1](); //Error: Expected a type.
copy(temp.begin(), temp.end(), val);
string temp;
temp = line.substr(0, pos);
unsigned char* val=new[temp.size() + 1](); //Error: Expected a type.
copy(temp.begin(), temp.end(), val);
在一个未加工的无符号字符缓冲区中放置一个字符串是不美观的,你不应该这样做,但这是堆栈溢出,我们必须回答。
unsigned char *val=new unsigned char[temp.length()+1];
strcpy((char *)val,temp.c_str());
char
数组,可以使用.c_str()
,但这并不能保证无符号。为什么那个问题中的方法对您无效? - Ryan Hainingunsigned char
数组,而不仅仅是一个unsigned char
吗? - chris