如果我在嵌入式系统中定义宏或使用静态常量值,
将使用哪种内存,芯片闪存或芯片内存?
哪种方式更好?
最佳答案
好吧,如果您 #define 一个宏,则不会为其分配额外的内存或代码空间(闪存)。所有工作都在编译阶段完成。
如果使用 static const
全局变量,将为初始值和为其分配的内存生成二进制代码。使用了闪存(bin 文件更大)和内存(芯片内存)。
关于const value vs. #define,会用到哪种芯片资源?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9833514/