【C语言】大小端判断

  • 小端模式: 数据的低位字节存储在内存的低地址处

    例如:整数 0x12345678 在内存中存储为 0x78 0x56 0x34 0x12

  • 大端模式: 数据的高位字节存储在内存的低地址处

    例如:整数 0x12345678 在内存中存储为 0x12 0x34 0x56 0x78

方法1,联合体(最常用)

c 复制代码
#include <stdio.h>

int main() {
    union {
        int i;
        char c;
    } u;
    
    u.i = 1;
    
    if (u.c == 1) {
        printf("小端模式\n");
    } else {
        printf("大端模式\n");
    }
    
    return 0;
}

方法2

c 复制代码
#include <stdio.h>

int main() {
    int num = 1;
    char *p = (char*)&num;
    
    if (*p == 1) {
        printf("小端模式\n");
    } else {
        printf("大端模式\n");
    }
    
    return 0;
}
相关推荐
北域码匠5 小时前
高通滤波算法深度解析(High-Pass Filter)
stm32·算法·c#·数字信号处理·嵌入式开发·滤波算法·高通滤波
南棱笑笑生5 小时前
20260904实测给飞凌OK3576-C开发板刷入Rockchip原厂的IMG固件【使用飞凌的DTS】切换串口波特率为1.5Mbps
c语言·开发语言·rockchip
指掀涛澜天下惊5 小时前
强化学习进阶篇八 策略梯度算法
深度学习·学习·算法·强化学习
乌萨奇也要立志学C++5 小时前
【洛谷】kmp算法
开发语言·算法
禹凕5 小时前
Dijkstra算法详解与应用
python·算法
tangwangbi6 小时前
Linux 系统配置文件:/etc/profile、~/.bashrc 和 ~/.bash_profile 三者之间的区别与作用
linux·运维·bash
蜀道山老天师6 小时前
Shell Bash变量与运算符(含条件测试与流程控制)
linux·运维·bash
YaraMemo6 小时前
元启发式算法框架
人工智能·算法·5g·信息与通信·启发式算法·信号处理
Mr.朱鹏6 小时前
Linux 服务器 LVM 根分区在线动态扩容
linux·服务器·数据库
mengge.cloud6 小时前
存储技术基础小白教程
linux·运维·服务器·wpf·存储