大端字節序、小端字節序

【大端字節序】
大端存儲模式是指數據的低字節內容保存到內存的高地址中,而數據的高字節內容保存到內存的低地址
【小端字節序】
小端存儲模式是指數據的低字節內容保存到內存的低地址中,而數據的高字節內容保存到內存的高地址
程序驗證:

#include<stdio.h>
int main()
{
    int a = 1;
    char *p = (char *)&a;
    if (*p == 1)
        printf("小端\n");
    else
    {
        printf("大端\n");
    }
    return 0;
}

程序改進:(函數實現)

#include<stdio.h>
int check_sys() 
{ 
    int i = 1;  
    //00000000 00000000 00000000 00000001
    //十六進制:00 00 00 01
    return (*(char *)&i);   //強制類型轉換,char一個字節
}
int main()
{ 
    int ret = check_sys();  
    if (ret == 1)   
    { 
        printf("小端\n");
        //01 
    } 
    else    
    {
        printf("大端\n");
        //00 
     }   
    return 0;
}

程序改進: (採用聯合union

#include<stdio.h>
int check_sys()
{ 
    union   
    { 
        int i;     
        char c;
    }un;    
    un.i = 1;  
    return un.c;
}
int main()
{ 
    int ret = check_sys();  
    if (ret == 1)   
    { 
        printf("小端\n");
    } 
    else    
    { printf("大端\n"); }   
    return 0;
}
發佈了55 篇原創文章 · 獲贊 19 · 訪問量 2萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章