string转化为unsigned char数组
时间: 2024-02-04 12:03:25 浏览: 91
unsigned char数组转成string 用16进制表示
4星 · 用户满意度95%
可以使用以下代码将string转化为unsigned char数组:
```c++
#include <cstring>
#include <iostream>
int main() {
std::string str = "hello world";
unsigned char arr[str.size() + 1];
std::strcpy((char*) arr, str.c_str());
// print the array
for (int i = 0; i < str.size(); ++i) {
std::cout << arr[i] << " ";
}
std::cout << std::endl;
return 0;
}
```
注意,这里使用了C++的标准库函数`std::strcpy()`将字符串复制到unsigned char数组中。另外,由于unsigned char数组是一个字节一个字节的存储数据的,所以对于ASCII码表中的字符,其值与字符本身的值相同。但如果字符串中有中文等非ASCII字符,则需要进行编码转换才能正确地将其存储到unsigned char数组中。
阅读全文