我需要在大约300个 .c 文件的顶部包含一个 #define
。 我希望不必更改代码,因为它是开源代码,但如果必须更改,则只需编写一个脚本来修改所有文件。 有没有一种方法可以使用 gcc 在编译期间将 #define
或头文件包含添加到每个源文件的顶部? 这个 #define
是:
#define malloc MYmalloc
-Dmalloc=MYmalloc
传递给gcc
选项。-D
选项的更多信息:
http://gcc.gnu.org/onlinedocs/gcc/Preprocessor-Options.html
请注意,如果您想为调试目的修改malloc
函数的行为,您可能还会对glibc
malloc
钩子感兴趣。
http://www.gnu.org/software/libc/manual/html_node/Hooks-for-Malloc.html
gcc option -D
:
-D name
Predefine name as a macro, with definition 1.
-D name=definition
....
gcc ... -Dmalloc=MYmalloc
。
#include <stdlib.h>
。嗯... - aschepler