-D编译选项用于在编译时定义宏
-DDATA:相当于定义了宏DATA,其值为1
-D与宏名字之间也可以加空格,也就是说-DDATA与-D DATA是相同的
-DDATA=8:相当于定义了宏DATA,其值为8
#include <stdio.h>
int main()
{
printf("DATA=%d\n", DATA);
return 0;
}
编译命令:gcc -o m m.c -D DATA=18
运行程序输出:
DATA=18
注:在编译命令中通过-D这种方式定义的宏,如果与在h或c文件中定义的宏名字相同相同,则会报错