char 数组如何转换为 unsigned char数组
时间: 2024-12-16 15:14:14 浏览: 2
unsigned char数组转成string 用16进制表示
将`char`数组转换为`unsigned char`数组通常涉及简单的数据类型转换,因为它们在内存中占用相同的字节数,只是表示范围不同。在C/C++语言中,你可以通过逐个元素复制并指定类型来完成这个过程。这里有一个简单的示例:
```cpp
#include <iostream>
void convertCharArray(char* charArray, unsigned char* ucharArray, int size) {
for (int i = 0; i < size; ++i) {
ucharArray[i] = static_cast<unsigned char>(charArray[i]);
}
}
int main() {
char charArray[] = {'a', 'b', 'c'};
unsigned char ucharArray[charArray.size()];
convertCharArray(charArray, ucharArray, sizeof(charArray) / sizeof(charArray[0]));
// 打印转换后的数组
for (int i = 0; i < sizeof(ucharArray) / sizeof(unsigned char); ++i) {
std::cout << static_cast<char>(ucharArray[i]) << " ";
}
return 0;
}
```
在这个例子中,`convertCharArray`函数遍历`charArray`并将每个字符转换为其无符号等效值。然后在`main`中,我们创建一个新的`ucharArray`并调用该函数。
阅读全文