大小端的介绍

大小端概念

大端模式:是指数据的低位保存在内存的高地址中,而数据的高位,保存在内存的低地址中。
小端模式:是指数据的低位保存在内存的低地址中,而数据的高位,,保存在内存的高地址中。
百度2015年系统工程师笔试题:
请简述大端字节序和小端字节序的概念,设计一个小程序来判断当前机器的字节序。(10分)
#include #include // 代码1 int check_sys() { int i = 1; return (*(char*)&i); } int main() { int ret = check_sys(); if (1 == ret) { printf("小端\n"); } else { printf("大端\n"); } system("pause"); return 0; }//代码2 int check_sys() { union { int a; char b; }un; un.a = 1; return un.b; }

练习
//输出什么? #include #includeint main() { char a = -1; signed char b = -1; unsigned char c = -1; printf("%d %d %d\n", a, b, c); system("pause"); return 0; }

大小端的介绍
文章图片

下面程序输出什么?
1. #include #includeint main() { char a = -128; printf("%u\n", a); system("pause"); return 0; }

大小端的介绍
文章图片

2. #include #includeint main() { char a = 128; printf("%u\n", a); system("pause"); return 0; }

大小端的介绍
文章图片

3. #include #includeint main() { int i = -20; unsigned int j = 10; printf("%d\n", i + j); system("pause"); return 0; }

大小端的介绍
文章图片

4. #include #includeint main() { unsigned int i; for (i = 9; i >= 0; i--) { printf("%u\n", i); } system("pause"); return 0; }

【大小端的介绍】大小端的介绍
文章图片

    推荐阅读