测试大端小端的两个个程序

来源:互联网 发布:多玩wow数据库 编辑:程序博客网 时间:2024/06/05 02:32

   了解大端小端也有好长时间了,今天我就总结一下测试大端小端的两种方法。。


第一种:

#include<stdio.h>int check_sys(char *p){if (*p == 0x11){return 0;}elsereturn 1;}int main(){int a = 0x11223344;char *p = (char *)&a;int ret = check_sys(p);if (ret == 0){printf("bigger\n");}elseprintf("little\n");system("pause");return 0;}

  这个是利用数在内存中的二进制存储方式,在我以前的博客中有介绍过,就不详细说了。


第二种:

#include<stdio.h>int main(){union UN{int i;char c;}un;un.i = 1;if (un.c == 1){printf("little");}elseprintf("bigger");system("pause");return 0;}


第二种,就是利用联合。在联合里,所有元素公用一个空间,大小是最大元素的大小。并且存在对齐。


0 0
原创粉丝点击