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

#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字节)

相关推荐
SuperByteMaster2 小时前
低功耗GPIO引脚配置
c语言
phltxy2 小时前
C 语言自定义类型:结构体、位段、枚举与联合体
c语言·开发语言
女神下凡3 小时前
芯参谋(29):UFS UMCP 软件设计规范
arm开发·单片机·嵌入式硬件
李日华大战鸡红3 小时前
IC-MU128编码器使用教程
stm32
周洲08303 小时前
STM32片内Flash读写深度详解|掉电参数保存、底层原理
linux·前端·stm32
大侠归来4 小时前
C语言与C++在基础语法上的区别
java·c语言·c++
RISCV_Explorer4 小时前
RISC-V电源管理与低功耗实战——WFI指令、电源域划分与唤醒路径设计
单片机·嵌入式硬件·risc-v
zd8451015004 小时前
支持双向输入信号的开关量电路
单片机·嵌入式硬件
齐落山大勇4 小时前
【裸机程序】IMX 6ULL的中断机制的理解
单片机·嵌入式硬件
cu1435 小时前
细谈GM8229的具体功能与其应用
c语言·c++·人工智能·单片机