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

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

相关推荐
KaifuZeng17 小时前
通信与接口协议面试二、UART
嵌入式硬件·通信与接口协议
hyhsandy180318 小时前
STM32F103 TIM学习笔记
笔记·stm32·学习
未来之窗软件服务18 小时前
计算机考试-C语言 应用题—东方仙盟
c语言·开发语言·仙盟创梦ide·东方仙盟·计算机考试
luj_176818 小时前
草酸与烟酸对消化及糖代谢的影响解析
服务器·c语言·开发语言·经验分享·算法
fei_sun18 小时前
【SystemVerilog】SystemVerilog与C语言的接口
c语言·开发语言
GuHenryCheng18 小时前
【ESP32】ESP-IDF开发环境搭建(cursor)
git·stm32·单片机·学习
xyz_CDragon19 小时前
OpenAI发布首款自研芯片Jalapeño:9个月流片,AI设计芯片的时代来了
人工智能·单片机·深度学习·神经网络·芯片设计
小心亦新20 小时前
STM32学习10---串口
stm32·嵌入式硬件·学习
十月的皮皮20 小时前
C语言学习学习笔记20260704-中缀表达式求值(双栈法)
c语言·笔记·学习
wuminyu20 小时前
markword在高并发场景下变化剖析
java·linux·c语言·jvm·c++