标签:大端 小端 联合体
不同的cpu存储方式也是不同,我们常见的x86就是小端模式,而有些arm则是大端模式。
大小端排序是针对字节之间的排序关系,而字节内部顺序是不变的。
小端:低字节排在内存的低地址,高字节排在内存的高地址
大端:高字节排在内存的低地址,低字节排在内存的高地址
例如:int a=0x12345678
小端模式存储:
内存 | 0x000000 | 0x000001 | 0x000002 | 0x000003 |
数据 | 0x12 | 0x34 | 0x56 | 0x78 |
大端模式存储:
内存 | 0x000000 | 0x000001 | 0x000002 | 0x000003 |
数据 | 0x78 | 0x56 | 0x34 | 0x12 |
联合体是公用内存,内部数据则是从低地址排序。
如果判断系统大小端即可方便使用联合体验证
typedef union { char a; int c; }Test; int check() //1--小端 0---大端 { Test t; t.c=1; if(t.a==1) return 1; else return 0; }
本文出自 “叶子” 博客,请务必保留此出处http://luoqiu.blog.51cto.com/2198651/1621347
标签:大端 小端 联合体
原文地址:http://luoqiu.blog.51cto.com/2198651/1621347