ARTICLE DETAIL

资讯详情

深耕网站建设、视觉设计与SEO优化的一线实战洞察。

C语言 判断当前存储大小端问题

C语言 判断当前存储大小端问题

1.代码1

#include<stdio.h>int check_sys(){int a=1;return *(char*)&a;//将int*强制转换为char* 判断一个字节的内容就知道当前存储模式
}
int main(){if(1==check_sys())printf("小端");elseprintf("大端");return 0;
}

2.代码2
使用联合体判断大小端。
char和int共用一段空间。将int赋值为1,判断char值,就相当于判断int中的第一个字节值是多少。

#include<stdio.h>int check_sys(){union un{char c;int  b;}u;u.b=1;//返回1 小端 返回0大端return u.c;}
int main(){if(1==check_sys())printf("小端");elseprintf("大端");return 0;
}
返回列表