C语言判断机器CPU大小端模式的两种方法
来源:互联网 发布:语音制作软件下载 编辑:程序博客网 时间:2024/04/24 05:24
我的主页:http://www.techping.cn/
这个.cn域名随时都可能停用,如有更新,我会说明。
我的个人站点博客:http://www.techping.cn/blog/wordpress/
我的简书:http://www.jianshu.com/users/b2a36e431d5e/timeline
我的Github地址:https://github.com/ChenZiping
欢迎相互follow~—
我的主页:http://www.techping.cn/
这个.cn域名随时都可能停用,如有更新,我会说明。
我的个人站点博客:http://www.techping.cn/blog/wordpress/
我的简书:http://www.jianshu.com/users/b2a36e431d5e/timeline
我的Github地址:https://github.com/ChenZiping
欢迎相互follow~# C语言判断机器CPU大小端模式的两种方法
本文介绍使用C语言编写程序判断机器CPU大小端模式的两种方法。
第一种方法
思路:利用指针的强制类型转换
#include <stdio.h>int main(){ int a = 0x12345678; char *p = (char *)&a;//强制转换取到a最低字节的地址 if (*p == 0x78) { //a 12 34 56 78(Hex) //*p 78 printf("little endian\n"); } else if (*p == 0x12) { //a 78 56 34 12(Hex) //*p 12 printf("big endian\n"); } return 0;}
第二种方法
思路:利用共用体所有数据都从同一地址开始存储。
#include <stdio.h>union test_union//用于测试的共用体{ int a;//元素a,占4个字节 char b;//元素b,占1个字节,b在内存中的地址为a最低字节的地址} test;int main(){ test.a = 0x12345678; if (test.b == 0x78) { //test.a 12 34 56 78(Hex) //test.b 78 //b在内存中的地址为a最低字节的地址 printf("little endian\n"); } else if (test.b == 0x12) { //test.a 78 56 34 12(Hex) //test.b 12 //b在内存中的地址为a最低字节的地址 printf("big endian\n"); } return 0;}
- 我的个人主页:http://www.techping.cn/
- 我的个人站点博客:http://www.techping.cn/blog/wordpress/
- 我的CSDN博客:http://blog.csdn.net/techping
- 我的简书:http://www.jianshu.com/users/b2a36e431d5e/timeline
- 我的GitHub:https://github.com/techping
欢迎相互follow~
0 0
- C语言判断机器CPU大小端模式的两种方法
- C语言中判断CPU大小端的方法
- 如何用C语言判断机器的大小端模式
- 判断机器大小端的两种实现方法
- 【C语言】判断机器的大小端
- C语言判断计算机cpu大小端
- C语言程序判断计算机的CPU大小端
- 【C语言】编写函数判断当前的机器大小端模式
- C语言测试大小端的两种正确方法
- C语言,判断机器大小端
- c语言判断机器大小端
- c语言检测cpu大小端模式
- 判断机器大小端的两种实现方式
- 判断CPU大小端模式
- 判断CPU大小端模式
- C语言判断大小端模式
- C语言判断大小端模式
- C 语言大小端模式判断
- javaScript节点、关系在节点树中导航分为横纵向!
- 第十五周项目—统计字符串种类
- 【完美解决系列】Android6.0上菜单栏不显示Menu的问题
- 一道常被人轻视的前端JS面试题
- python学习
- C语言判断机器CPU大小端模式的两种方法
- oracle sum()over函数的使用
- SpringMVC 数据的格式化、JSR 303数据校验和国际化
- 期末随笔
- EasyUI DataGrid表格分页效果实现—笔记
- 【内部类】案例讲解:使用内部类开发一个存放数据的容器
- 【转】Vector与ArrayList区别
- 在网页中创建表单
- oracle 按每天,每周,每月,每季度,每年查询统计数据