判断机器大小端的两种实现方法
2018-10-12 14:09
513 查看
第一种方法
思路:利用指针的强制类型转换
#include <stdio.h>
int main(void)
{
int data1 = 0x12345678;
int i;
for(i=0; i<4; i++)
{
printf("%#x ----->%p\n",*((char *)&data1 + i),(char *)&data1 + i);
}
return 0;
}
从输出的结果可以看出,高位地址0xbfc1b1ff存的是数据的高位0x12,低位地址0xbfc1b1fc存的是数据的低位0x78。所以是小端。同时我们亦可以看到,对数据data取地址实际指向的是存放低位数据的空间。
第二种方法
思路:利用共用体所有数据都从同一地址开始存储。
#include <stdio.h>int main(void)
{
int i;
union endian
{
int data;
char ch;
}test;
test.data = 0x12345678;
if(test.ch == 0x78)
{
printf("little endian!\n");
}
else
{
printf("big endian!\n");
}
for(i=0; i<4; i++)
{
printf("%#x ------- %p\n",*((char *)&test.data + i),(char *)&test.data + i);
}
return 0;
}
您可能感兴趣的文章:
相关文章推荐
- 判断机器大小端的两种实现方法
- 两种方法实现判断当前机器是大端还是小端
- 判断机器大小端的两种实现方法
- 判断机器大小端的两种实现方法
- 实现判断机器大小端的两种方法
- 判断机器大小端的两种实现方式
- 【面试题】判断回文数-两种方法实现
- 集群间多台机器SSH免密码登录(两种方法实现)
- Java判断单链表是否有环的两种实现方法
- Java判断链表是否有环的两种实现方法
- 编写程序判断大小端的两种方法
- javascript或asp实现的判断身份证号码是否正确两种验证方法
- 编写程序判断大小端的两种方法
- C语言判断机器CPU大小端模式的两种方法
- Go语言实现机器大小端判断代码分享
- Java判断单链表是否有环的两种实现方法
- 判断机器大小端的C语言实现
- 两种方法实现队满和队空的判断操作(循环队列)
- @V@ java代码笔记2010-06-12:java控制台输入各类型类实现;以及判断输入字符串里面是否有数字的两种方法:方法1:转换成字符数组;方法2:正则表达式。
- Java判断单链表是否有环的两种实现方法