int big_endian (void)
{
union{
long l;
char c[sizeof(long)];
}u;
u.l = 1;
return (u.c[sizeof(long) - 1] == 1);
}
请写一个C函数,若处理器是Big_endian的,则返回0;若是Little_endian的,则返回1
解答:
int checkCPU( )
{
{
union w
{
int a;
char b;
} c;
c.a = 1;
return(c.b ==1);
}
}
本文提供了一个简单的C函数实现,用于检测处理器的字节序。通过创建一个联合体变量,并将一个长整型数值设置为1,然后检查该数值在内存中低位字节的位置来判断处理器是使用Big-endian还是Little-endian格式。
1003

被折叠的 条评论
为什么被折叠?



