大端小端:测试本机的数据存储形式
小端:数据的低位 保存在 低地址
大端:
这种数据存储方法上的差别不是由操作系统造成的,而是由处理器体系结构造成的。
1 #include <stdio.h>2 3 int main(int argc, char *argv[])4 {5 int a = 0x12345678;6 char *p = (char *)&a;7 if(*p = 0x78)8 printf("little endian\n");9 else10 fprintf(stdout, "big endian\n");11 12 return 0;13 }
1 #include <stdio.h>2 3 /* 数据存储形式测试函数,大端法返回0,小端法返回1 */4 int test_endian(void)5 {6 int a = 0x12345678; // 测试用的数据7 char *p= (char *)&a; // 转换为字符型数据的指针8 9 if(*p == 0x78) // 判断最低一个字节的顺序10 return 1;11 return 0;12 }13 14 int main(int argc, char *argv[])15 {16 if(test_endian() == 1) // 小端法17 {18 /* 相应的操作 */19 }20 else // 大端法21 {22 /* 相应的操作 */23 }24 return 0;25 }
验证网络字节序为big-endian大端字节序
1 #include <stdio.h>2 3 int main(int argc, char *argv[])4 {5 int a = 0x12345678;6 int b = htonl(a);7 char *p = (char *)&b;8 if((int)*p == 0x78)9 printf("little-endian\n");10 else if((int)(*p) == 0x12)11 printf("big-endian\n");12 else13 printf("unkonwn\n");14 15 return 0;16 }
大端小端:测试本机的数据存储形式相关推荐
- 彻底弄懂计算机中的大端小端
大端与小端这个问题在做和其他设备交换原始字节数据的时候是非常重要的概念,也是必须要掌握的内容,但是很多人就是仅仅是稍微有些了解,但每次真正去做东西的时候,还是要花半天去想,博主就是这样的人,出现这样问 ...
- Java代码测试大端小端
Java果真强大,神马功能的函数都能找到,测试大端小端只需一句话: if(ByteOrder.nativeOrder()==ByteOrder.BIG_ENDIAN)System.out.printl ...
- socket 大端 小端 转换 (转)《二》
http://blog.csdn.net/kukumouse/article/details/2270356 (1)对于位域结构中的变量来说,其长度不能跨越字节,也就是说不能超过8位.当然如果设置空白 ...
- 栈增长方向与大端/小端问题
转:http://www.cnblogs.com/xkfz007/archive/2012/06/22/2558935.html 栈增长和大端/小端问题是和CPU相关的两个问题. 在内存管理中,与栈对 ...
- 大端小端模式(俗称大尾小尾模式)
转自百度百科 http://baike.baidu.com/link?url=uKVPtSaiXzEAXJSHfiya1Wj_oITw-t8MpHkJxJvMb0Eu_WXo28czAHLY-FOqj ...
- Unicode编码与大端小端
大端小端区别: 举例: 一个4字节的整型数据 0x12345678 高字节是0x12, 低字节是0x78,这个不用多说吧 存储地址假设为0x00000000 0x00000001 0x00000002 ...
- C语言中低位存放,C语言 大端小端存储解析以及判断方法
当我们在C语言中查看数据在内存中的存储时,我们经常会发现一个很奇怪的现象,什么现象呢? 例如下面这段代码 int main() { int i = 1; return 0; } 数据在内存中的存放方式 ...
- C语言程序设计 | 大端小端存储解析以及判断方法
当我们在C语言中查看数据在内存中的存储时,我们经常会发现一个很奇怪的现象,什么现象呢? 例如下面这段代码 int main() {int i = 1;return 0; } 数据在内存中的存放方式似乎 ...
- C/C++之大端小端
如果有一个变量 unsigned int a=0x12345678; 大端Big-Endian:高字节在前 12 34 56 78 小端Little-Endian:低字节在前 78 56 34 12 ...
最新文章
- python之局部变量引用赋值前的结果
- 一种精确从文本中提取URL的思路及实现
- vim的基本快捷操作(二)——可视模式
- Linux中变量#,#,@,0,0,1,2,2,*,$$,$?的含义
- 开发日记-20190709 关键词 读书笔记 《Perl语言入门》Day 6
- 多生产者_多线程必考的「生产者 - 消费者」模型,看齐姐这篇文章就够了
- 【JAVA】StringTokenizer 迭代方式对字符串进行分割
- 手机电脑的芯片主要是由_全体起立!苹果自研电脑芯片登场,iOS迎大更新…WWDC20精彩远不止这些...
- Spring+SpringMVC+Mybatis项目—企业权限管理系统(2)
- (4.28)for xml path 在合并拆分上的作用演示
- MVC中modelstate的使用
- 团队开发之个人博客八(4月27)
- springmvc03 接收请求参数
- 通用 字符串工具类
- 001. 为input type=text 时设置默认值
- matlab igbt在哪,提出问题:“IGBT是什么?都在哪里有应用?”
- 员工“风清扬”感慨:为公司裁员结果把自己裁了,网友:真够狠的
- 2021年第十二届蓝桥杯A组省赛
- 语音怎么在线转文字,语音转文字的小技巧
- 机械硬盘显示容量0字节要如何办啊