int main()
{
unsigned short crc = 0x00;
unsigned char buffer[4] = {0x01,0x02,0x72,0xAE};
memcpy((void *)&crc, (void *)&buffer[2],2);
printf("crc = 0x%x \n",crc);
return 0;
}
对于上述程序,我期望 crc 值为:0x72AE,但结果为:crc = 0xAE72
我无法理解为什么字节被洗牌,即使我正在做一个 memcpy?
任何形式的帮助将不胜感激。提前致谢。