我想在C中将一个字节数组转换为字符串,但我还无法完全弄清楚。
我有一个在C++中适用的示例,但我需要将其转换为C。
以下是C++代码:
#include <iostream>
#include <string>
typedef unsigned char BYTE;
int main(int argc, char *argv[])
{
BYTE byteArray[5] = { 0x48, 0x65, 0x6C, 0x6C, 0x6F };
std::string s(reinterpret_cast<char*>(byteArray), sizeof(byteArray));
std::cout << s << std::endl;
return EXIT_SUCCESS;
}
请问有人能够指导我吗?
'\0'
的字节数组。是的,你需要它的大小来容纳它。 - Eugene Sh.BYTE
类型?这就像是在 C 语言中强加另一种语言的术语,这是不合适的。在 C 语言中,我们称之为unsigned char
或者如果你喜欢的话可以使用uint8_t
。 - tadman