Appearance
在C语言中,我们可以使用结构体来获取本机的字节序信息。具体来说,我们可以定义一个包含一个整型变量的结构体,并将该变量初始化为1。然后,我们读取结构体中第一个字节的值,如果该值为1,说明本机采用的是小端序;反之,如果该值为0,说明本机采用的是大端序。
c
#include <stdio.h>
int main() {
union { int i; char c; } u;
u.i = 1;
if (u.c == 1)
printf("Little Endian\n");
else
printf("Big Endian\n");
return 0;
}在这个代码中,我们将整型变量 i 和字符型变量 c 定义在同一个联合体中,并使用 u.i 和 u.c 分别访问它们。因为 i 和 c 使用的是同一块内存空间,所以当我们将 i 初始化为1后,c 的值也会被更新为1或0,从而得到本机的字节序信息。