GCC编译时增加宏定义-D,相当于#define ,可以在遇到条件编译时执行。 #ifdef //条件编译内容 #endif 例子: 搭配gcc编译命令:gcc -DDEBUG -g -o main.out main_牛客网_牛客在手,offer不愁
gcc -D MACRONAME 这样就定义了预处理宏,编译的时候可选代码就会被编译进去了。 对于GCC编译器,有如下选项: -D macro=string,等价于在头文件中定义:#define macro string。例如:-D TRUE=true,等价于:#define TRUE true -D macro,等价于在头文件中定义:#define macro 1,实际上也达到了定义:#define macro的...
gcc -DVERSION_NUMBER=123 source.c -o program 在上述示例中,宏VERSION_NUMBER被定义为123。 你还可以通过多次使用-D选项来传递多个宏定义。例如: gcc -DDEBUG -DVERSION_NUMBER=123 source.c -o program 在这个示例中,传递了两个宏定义:DEBUG和VERSION_NUMBER。 通过在编译命令中使用-D选项,你可以方便地传...
-D 定义宏(D-define) -D定义宏有两种情况,一种是-DMACRO 相当于程序中使用#define MACRO 另外可以-DMACRO=A 相当于程序中使用#define MACRO A 这只是一个编绎参数,在连接时没有意义 如: $gcc -c hello.c -o hello.o -DDEBUG 上面为hello.c定义了一个DEBUG宏,某些情况下使用-D 代替直接在文件中使...
gcc编译时传递宏定义 脚本中: VERSION=3 gcc -DVERSION=${VERSION} 1. 2. 代码中 #if (VERSION == 3) #else #endif 1. 2. 3. 4. 5.
定义宏macro,宏的内容定义为字符串1 -Dmacro=defn 定义宏macro的内容为defn命令行上所有的-D选项在-U选项之前处理 -Umacro 取消宏macro -U选项在所有的-D选项之后处理,但是优先于任何-include或-imacros选项 -dM 告诉预处理器输出有效的宏定义列表(预处理结束时仍然有效的宏定义)该选项需结合-E选项使用 ...
gcc的-D选项相当于在源文件中全局添加一个宏定义,一般在平台兼容或者程序模式切换中比较常见,例如: #ifdef ARM DO SOMETHING #elif X86 DO SOMETHING ... #endif 这时候在编译时或者在Makefile中加入 -DARM 或者 -DX86 来选择平台,而不用改源代码。 又...
-D是宏定义 若代码里出现 ifdef _BSD_SOURCE ...endif 样子的代码时,如果不加上 -D_BSD_SOURCE的话,那这段代码是不会编译的.C语言里的宏是很好玩,很强大的一个东东...
–-D:定义宏,相当于#define指令。 –-U:取消宏定义,相当于#undef指令。 一、什么是gcc命令 gcc是GNU C Compiler的缩写,是一种用于编译和连接C语言程序的编译器工具。它是以GNU通用公共许可证(GPL)发布的自由软件,并且被广泛用于许多操作系统和编程语言。