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

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

相关推荐
爱读书的小胖1 分钟前
Codewars:Last digit of a large number(C)解题分析
c语言·开发语言·r语言
动词ing28 分钟前
【51单片机】开始软件安装和构成
单片机·嵌入式硬件·51单片机
铅笔小新z32 分钟前
【stm32】PWM呼吸灯
stm32·单片机·嵌入式硬件
想做小南娘,发现自己是女生喵36 分钟前
第二周学习文档 Linux C 文件操作
linux·c语言·学习
深圳老胡1 小时前
RTX 与其他 RTOS 操作系统的差异及优缺点分析
笔记·stm32·单片机·代码规范
洞察物理世界1 小时前
【SI_PRBS 01】快速了解光通信PRBS
单片机·嵌入式硬件
Bluetooth7301 小时前
c语言变量的存储类别
c语言
happygrilclh1 小时前
LVGL 移植整体流程
stm32
续写烂尾2 小时前
SDNAND 硬件电路设计:供电、上拉与走线全景
单片机·嵌入式硬件·sd nand·sdnand
Brilliantwxx3 小时前
【STM32】 RTC 实时时钟详解:从概念到预分频器
stm32·单片机·嵌入式硬件·mcu·bash