【发布时间】:2012-12-25 12:34:33
【问题描述】:
示例代码:
main()
{
printf("%d\n", MARCO);
// printf("%s\n", MARCO);
}
当我尝试使用gcc -D 选项时,我发现以下命令有效:
gcc -D MARCO=12345 test.c
但是当我将 12345 更改为字符串时:
gcc -D MARCO=abcde test.c
发生错误:
error: ‘abcde’ undeclared (first use in this function)
我试过-DMARCO=abcde,-DMARCO="abcde",-D MARCO="abcde";一切都因该错误而失败。
这个-D 选项是否只支持整数?
【问题讨论】:
-
它叫做“宏”,而不是“宏”。
-
如果他愿意,他可以使用一个名为 MARCO 的宏。他也可以有另一个叫 POLO。
-
啊,有人编辑了标题。