佚名通过本文主要向大家介绍了stm32定义全局变量,stm32定义位变量,stm32变量定义,stm32如何定义位变量,stm32怎么定义位变量等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
问题:STM32如何定义变量不浪费内存
描述:
我就随便写了u8 a; u8 b; u16 c;
然后被鄙视了,“很浪费内存的!”
所以想问下怎样写会省内存,位域定义?
struct bs
{
u16 a:8;
u16 b:8:
u16 c:16;
}bit;
还有什么其他方法没?
解决方案1:
描述:
单片机内存structc语言变量
笔试时候有考察,32位单片机,请定义2个8bit,1个16bit变量.我就随便写了u8 a; u8 b; u16 c;
然后被鄙视了,“很浪费内存的!”
所以想问下怎样写会省内存,位域定义?
struct bs
{
u16 a:8;
u16 b:8:
u16 c:16;
}bit;
还有什么其他方法没?
解决方案1:
考官的目的是希望考察变量定义的对其方式吧,定义数据类型的时候使用__attribute__((packed)) 来取消编译器优化对齐方式,按照实际占用字节对齐。