这段代码 Endian 安全吗?
Is this code Endian safe?
我正在测试可能的 Endian 问题的代码和平。代码是为 ppc 编写的,现在需要 运行 在 x86 机器上。
string Mac = nodeMessage->getMac();
char mac_string[17];
strncpy(mac_string, Mac.c_str(),16);
机器的字节序影响超过一个字节宽的整数值。我在那里看不到任何整数值。因此,我没有看到与上述代码相关的任何 Endian-ness 问题。
完成R Sahu的回答,问题可能是nodeMessage
以及它如何管理mac(我想它指的是mac地址)。
如果您只处理 1 字节字符 (ASCII),那么它的 Endian 安全,否则它不是。
以下link可能会有帮助。
Encode/Decode std::string to UTF-16
我正在测试可能的 Endian 问题的代码和平。代码是为 ppc 编写的,现在需要 运行 在 x86 机器上。
string Mac = nodeMessage->getMac();
char mac_string[17];
strncpy(mac_string, Mac.c_str(),16);
机器的字节序影响超过一个字节宽的整数值。我在那里看不到任何整数值。因此,我没有看到与上述代码相关的任何 Endian-ness 问题。
完成R Sahu的回答,问题可能是nodeMessage
以及它如何管理mac(我想它指的是mac地址)。
如果您只处理 1 字节字符 (ASCII),那么它的 Endian 安全,否则它不是。
以下link可能会有帮助。
Encode/Decode std::string to UTF-16