c - 宏定义占用多少内存空间?

标签 c macros

我的代码中有很多未使用的宏。 所以,我想知道..如果一个宏不用,它会占用你程序中的内存空间吗?

我拥有的宏类型只是基本的。 示例:

#define TEST_ID 0

最佳答案

宏将在预处理阶段展开,因此它们不存在于您的程序中。它们只是在您的源代码中占用一些空间。

编辑:

为了回应 Barmar 的评论,我做了一些研究。

MSVC 2012:在调试版本中(禁用所有优化时,/Od),添加宏行不会导致程序大小增加。

GCC:确实提供了一种在调试信息中包含宏的方法,只要您使用特定标志编译程序即可。参见 here . (我自己之前不知道。谢谢@Barmar,@Sydius)

关于c - 宏定义占用多少内存空间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25052968/

相关文章:

c++ - 撤消打印到命令行的换行符 (\n)

c++ - 在 Linux 下如何为可执行文件分配堆栈?

c# - 如何将二进制文件转换为另一种二进制表示形式,如图像

macros - 如何将Rust宏变量嵌入文档中?

c++ - #define 语句中的预期标识符

c - 用指针和地址更新整数

c - 隐藏 ^C 在 C 中按 ctrl-c

visual-studio - 用于选择启动项目的 Visual Studio 宏

c# - 在表单生成器自动回复器中查询自定义表

c++ - 如何在多个平台上使用__FILE__和__LINE__ info实现C/C++可变参数记录宏?