判断数据在内存中的存储方式算法

#include <stdio.h>

int main() {

unsigned int num = 1;

char *byte = (char*)&num;

if (*byte == 1) {

printf("Little-Endian\n");

} else {

printf("Big-Endian\n");

}

return 0;

}

大端是高字节存于低地址,低字节存于高地址。

小端是低字节存于低地址。

这里先定义一个4个字节的数为1,那么它的16进制表示就是00 00 00 01,然后将其地址转换为char类型,此时用*byte,这个表示读取内存中的第一个字节,即内存中低地址处的字节,如果读出来的值是00,代表是大端模式 ,读出来的是01,就是小端模式。

ps:如何定量的去判断一个任务的堆栈应该多大?(计算每个任务的局部变量和形参大小,以及递归调用的递归深度,比如一个函数是100字节的局部,被递归了10次,那就是1000字节)

相关推荐
XiHongShi20162 小时前
STM32F407 CRC-循环冗余校验例程,建议保存学习
stm32·单片机
心中有你02142 小时前
C语言埃氏筛法(素数筛选)
c语言·数据结构·算法
lhbweilai3 小时前
结合手册调试各个功能的寄存器+最后通过寄存器编写SPI的初始化和读写函数
stm32·单片机
小程序设计6 小时前
本科毕设避坑|大数据 / 单片机物联网 / 网络工程 / PLC / 机械设计选题与落地心得
java·hive·hadoop·单片机
Zw-awa11 小时前
先让程序开口说话:为什么把人机交互放在最前面
stm32
Zwawa11 小时前
把按键和 LED 状态显示出来:第一次看见程序到底在干什么
单片机·嵌入式
Zw-awa11 小时前
把按键和 LED 状态显示出来:第一次看见程序到底在干什么
stm32
Zw-awa11 小时前
面包板接线为什么这样接:从模块需求到芯片资源分配
stm32
小程序设计11 小时前
基于STM32的办公室智能空气净化系统设计
stm32·单片机
Zw-awa11 小时前
用 OLED 给 STM32 做实时调试面板
stm32