gcc编译器,加-D选项,编译时添加宏定义

gcc编译器,加-D选项,编译时添加宏定义

gcc使用-D选项,在编译时会在可执行文件中添加宏定义。相当于添加了全局宏
-D 参数在实际开发中还是经常使用的,比如可通过定义不同的宏,实现选择性编译,编译时定义不同的宏就编译相对应的代码。

例:test.c

#include 

int main(void)
{
#ifdef LINUX
    printf("hello world\n");
#endif
    printf("666\n");

    return 0;
}

1.编译时不添加任何宏:

root@qiujun:/home/qiujun/x6000test# gcc -o test test.c

运行结果:

root@qiujun:/home/qiujun/x6000test# ./test 
666

可见没有输出hello world,只输出了666。

2.编译时添加-DLINUX,再运行:

root@qiujun:/home/qiujun/x6000test# gcc -o test test.c -DLINUX
root@qiujun:/home/qiujun/x6000test# ./test 
hello world
666

可见输出了hello world和666。说明宏LINUX编译时被添加了!

3.编译时添加-D LINUX,再运行:

root@qiujun:/home/qiujun/x6000test# gcc -o test test.c -D LINUX
root@qiujun:/home/qiujun/x6000test# ./test 
hello world
666

效果和添加-DLINUX是一样的。

你可能感兴趣的:(GCC,gcc,编译选项,添加全局宏)