linux下字节和字符数组的转换
时间: 2023-11-21 13:17:11 浏览: 101
在 Linux 中,可以使用`memcpy()`函数将一个字节的数组转换为字符数组,或者使用`strcpy()`函数将一个字符数组转换为字节的数组。
将字节的数组转换为字符数组的代码示例:
```cpp
#include <iostream>
#include <cstring>
int main() {
unsigned char bytes[] = {0x48, 0x65, 0x6c, 0x6c, 0x6f, 0x21}; // "Hello!"
char chars[sizeof(bytes)];
memcpy(chars, bytes, sizeof(bytes));
std::cout << chars << std::endl;
return 0;
}
```
将字符数组转换为字节的数组的代码示例:
```cpp
#include <iostream>
#include <cstring>
int main() {
char chars[] = "Hello!";
unsigned char bytes[sizeof(chars)];
strcpy(reinterpret_cast<char*>(bytes), chars);
for (int i = 0; i < sizeof(bytes); i++) {
std::cout << std::hex << static_cast<int>(bytes[i]) << " ";
}
std::cout << std::endl;
return 0;
}
```
需要注意的是,字符数组和字节的数组在内存中的表示方式是不同的,转换时需要注意字节序和对齐等问题。
阅读全文