大端小端模式简单介绍 以及三种检测大小端存储的方法
2018-04-10 10:40
274 查看
大端模式:是指数据的高字节保存在内存的低地址中,而数据的低字节保存在内存的高地址端。
小端模式,是指数据的高字节保存在内存的高地址中,低位字节保存在在内存的低地址端。
比如 一个变量x的十六进制表示为 0x01 23 45 67,如果是大端存储 则是这样存储的 高地址--------->低地址 67 45 23 01 数据的高位 放在低地址 低位放在高地址而小端模式 是这样 01 23 45 67 数据的低位 放在低地址 高位放在高地址
大小端模式的检测(环境 win7 vs2008)
方法(1)利用利用共用体几个不同的变量共同占用一段内存的性质输出第一个字节[cpp] view plain copy
方法(2)[cpp] view plain copy
方法(3)[cpp] view plain copy
输出结果:
01 00 00 00
小端模式存储! 阅读更多
小端模式,是指数据的高字节保存在内存的高地址中,低位字节保存在在内存的低地址端。
比如 一个变量x的十六进制表示为 0x01 23 45 67,如果是大端存储 则是这样存储的 高地址--------->低地址 67 45 23 01 数据的高位 放在低地址 低位放在高地址而小端模式 是这样 01 23 45 67 数据的低位 放在低地址 高位放在高地址
大小端模式的检测(环境 win7 vs2008)
方法(1)利用利用共用体几个不同的变量共同占用一段内存的性质输出第一个字节[cpp] view plain copy
- #include <stdio.h>
- int check()
- {
- union UN
- {
- char c;
- int i;
- }un;
- un.i = 1;
- return un.c;
- }
- int main(void)
- {
- if(check()==1)
- printf("小端模式存储!\n");
- else
- printf("大端模式存储!\n");
- return 0;
- }
方法(2)[cpp] view plain copy
- #include <stdio.h>
- int check()
- {
- int i = 1;
- i = *(char*)&i;//取 i 的地址 强制类型转换后解引用
- return i;
- }
- int main(void)
- {
- if(check()==1)
- printf("小端模式存储!\n");
- else
- printf("大端模式存储!\n");
- return 0;
- }
方法(3)[cpp] view plain copy
- #include <stdio.h>
- int check()
- {
- union UN
- {
- char a [4];
- int i ;
- } un ;
- un .i = 1;
- //02 是整数不够2位就补上0 x是以16进制输出 hhx 表示只输出两位
- printf ("%02hhx %02hhx %02hhx %02hhx\n", un .a [0], un. a [1],un . a[2], un .a [3]);
- return un . a[0];
- }
- int main(void)
- {
- if(check()==1)
- printf("小端模式存储!\n");
- else
- printf("大端模式存储!\n");
- return 0;
- }
输出结果:
01 00 00 00
小端模式存储! 阅读更多
相关文章推荐
- 大端小端模式简单介绍 以及三种检测大小端存储的方法
- 关于大小端的简单介绍以及使用C写一个函数判断当前系统是大端存储还是小端存储
- C基础练习二:利用联合体检测系统的大小端存储模式一例
- 两种新建线程的简单方法以及懒汉模式中lock的重要性
- 利用Windows7三种电源模式为电脑降温的方法介绍
- Android平台Camera实时滤镜实现方法探讨(十)--代码地址以及简单介绍(20160118更新)
- 简述C语言中的存储模式(字节顺序)以及程序检测
- Photoshop切图简单设置+工具介绍+以及切图方法
- hzk16的介绍以及简单的使用方法
- 【计算机网络】关于三种网络通信模式以及java中三种通信方式的实现介绍
- hzk16的介绍以及简单的使用方法
- 读书笔记之工厂方法模式以及简单工厂模式
- PHP在浏览器上跟踪调试的方法以及使用ChromePhp、FirePHP的简单介绍
- 分布式锁简单入门以及三种实现方式介绍
- DataTable数据批量写入数据库三种方法比较 以及方法介绍
- php里少用到的session_module_name,以及session的key值限制,简单将session存储为json格式数据的方法
- 大端小端存储模式以及其对Union数据类型的影响
- 关于ios的autoLayout的一些简单介绍以及使用方法
- 【iOS开发-75】iOS数据存储的三种简单方式:plist、preference以及用NSCoding存储对象
- 常见存储介质介绍以及SD卡启动系统方法