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

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

相关推荐
wdfk_prog9 小时前
嵌入式面试真题第 11 题:RTOS 优先级翻转与实时任务阻塞的通用治理
c语言·缓存·面试·职场和发展·架构
炸膛坦客13 小时前
单片机开发工具篇:(九)MCU 芯片包的安装
单片机·嵌入式硬件
无相求码15 小时前
罪魁祸首:for 括号后面那个"隐形分号"
c语言
hy.z_77715 小时前
【C语言】11. 深入理解指针1
c语言·开发语言
ComputerInBook16 小时前
C & C++ 中的关键字 volatile 之详解
c语言·c++·volatile·编译器优化
智者知已应修善业18 小时前
【51单片机实现初始化数码管不显示按启动从0秒计时到60按暂停一次显示当前秒按2次恢复原始状态】2024-6-11
c语言·c++·经验分享·笔记·嵌入式硬件·算法·51单片机
小樱花的樱花18 小时前
Linux 多线程编程:互斥锁(Mutex)详解
linux·c语言·开发语言
电气_空空19 小时前
基于LabVIEW的数据采集系统设计与实现
单片机·嵌入式硬件·labview
caimouse19 小时前
ReactOS BootCD 光盘布局完整深度分析
单片机·reactos
noipp19 小时前
推荐题目:洛谷 P13554 【MX-X15-T1】奶龙龙
c语言·数据结构·c++·算法·编程·洛谷