我正在试验指针操作,并决定尝试通过使用 memcpy 从内存中直接复制来将数字数组转换为整数。
char aux[4] = {1,2,3,4};
int aux2 = 0;
memcpy((char*) &aux2, &aux[0], 4);
printf("%X", aux2);
Run Code Online (Sandbox Code Playgroud)
我预计结果是 0x1020304,因为我将确切的字节从一个复制到另一个,但是 printf 给了我结果 0x4030201,这几乎是我想要的输出,只是倒退。为什么会发生这种情况,有没有办法以“正确”的顺序获得结果?