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

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

相关推荐
l1t11 分钟前
利用DeepSeek辅助修改luadbi-duckdb读取DuckDB decimal数据类型
c语言·数据库·单元测试·lua·duckdb
云数据构建师30 分钟前
TB67S580FNG 芯片核心特点与应用概述
单片机·嵌入式硬件
GOATLong32 分钟前
git使用
大数据·c语言·c++·git·elasticsearch
CosimaLi40 分钟前
STM32F10x硬件I2C
stm32·单片机·嵌入式硬件
学习路上_write3 小时前
STM32回调函数使用/定时器/GPIO/串口/
c语言·单片机·嵌入式硬件
稻草、4 小时前
合泰单片机之时基中断
单片机·嵌入式硬件
czy87874754 小时前
C语言实现状态模式
c语言·状态模式
盈创力和20074 小时前
物联网 “神经” 之以太网:温湿度传感器的工业级 “高速干道”
运维·服务器·网络·嵌入式硬件·以太网温湿度传感器
czy87874754 小时前
C语言实现迭代器模式
c语言·迭代器模式
GilgameshJSS5 小时前
STM32H743-ARM例程36-DNS
c语言·arm开发·stm32·单片机·嵌入式硬件