将字符数组转换为字节的最佳方法是什么,反之亦然?
解:
void CharToByte(char* chars, byte* bytes, unsigned int count){
for(unsigned int i = 0; i < count; i++)
bytes[i] = (byte)chars[i];
}
void ByteToChar(byte* bytes, char* chars, unsigned int count){
for(unsigned int i = 0; i < count; i++)
chars[i] = (char)bytes[i];
}
Run Code Online (Sandbox Code Playgroud)
Jar*_*Par 13
char类型是ANSI标准保证大小的少数几种类型之一,大小为1字节.据我所知,C不直接定义类型字节.但是,如果一个名为byte的类型实际上不是一个字节大小,那就简直就是疯了.因此,简单的演员应该可以做到这一点.
C++中没有字节类型,根据标准:
编辑:
1.7:
一个字节至少足以包含基本执行字符集的任何成员,并且由连续的位序列组成,其数量是实现定义的.
5.3.3:
sizeof(char),sizeof(signed char)和sizeof(unsigned char)是1; sizeof应用于任何其他基本类型(3.9.1)的结果是实现定义的.