【C/C++】大端与小端
2016-07-23 12:08
274 查看
一、计算机字节序
小端字节序存储:低位存放着低地址,高位存放着高地址大端字节序存储:低位存放着高地址,高位存放着低地址
二、如何用C语言来判断机器的大端与小端
定义一个整形变量a,并初始化为1由于整型是4个字节
我们利用char取出第一个字节
判断该元素是0 还是1
如果为1,则为小端
否则为大端
三、两种方法
(1)共用体union
代码块:
int check_sys() { union UN { int a; char b; }un; un.a = 1; if(un.b == 1) return 1;//小端 else return 0;//大端 }
分析:
由于共用体的特征是这种几个不同的变量共同占用一段内存的结构
用共用体可以轻松达到这个效果
(2)用char* 取地址
代码块:
int check_sys() { int a = 1; char* p = (char* )&a; if(*p == 1) return 1;//小端 else return 0;//大端 }
分析:
a是四个字节用char* 来取一个字节的地址
判断1,0来达到效果
运行结果与小结
通过内存来检测大小端通过调用内存,这台计算机是以小端存储的
运行结果:
相关文章推荐
- 使用 Libki 来管理公共用户访问计算机
- 微型计算机的始祖:Altair 8800
- Tomcat端口被占用解决方法(不用重启)
- 通过手机、电脑远程开关机,Windows和linux机手机,电脑相互控制
- “传奇”图象数据存储方式
- 超大数据量存储常用数据库分表分库算法总结
- SQL Server误区30日谈 第18天 有关FileStream的存储,垃圾回收以及其它
- C++实现图的邻接表存储和广度优先遍历实例分析
- 详解Android文件存储
- php实现用手机关闭计算机(电脑)的方法
- C#调用sql2000存储过程方法小结
- 用IE重起计算机或者关机的示例代码
- 一张图告诉你计算机编程语言的发展历史
- PHP 存储文本换行实现方法
- 注册表中存储数据库链接字符串的方法
- Mysql中存储UUID去除横线的方法
- 计算机科学中32个常用的基础算法
- MySQLMerge存储引擎
- 深入PHP变量存储的详解
- 不能在本地计算机启动 apache2.2解决方法