【问题标题】:Creating Command Line Args with gcc?使用 gcc 创建命令行参数?
【发布时间】:2009-10-27 20:49:45
【问题描述】:

我有以下代码:

gcc test.c -o test -D ARGUMENT 2

我希望它定义值为 2 的 ARGUMENT,但它说找不到文件 2 或其他东西。我该怎么做?

【问题讨论】:

  • 一个注释(措辞差异可能会让您感到困难)-您所做的不是“创建命令行参数”-您的程序将在运行时通过 argc/argv 对 main 的参数获得(),但是您正在定义名称为“ARGUMENT”的预处理器宏以扩展为“2”。看看《GCC 简介》-amazon.com/Introduction-GCC-Brian-J-Gough/dp/0954161793/…我个人没有,但是看内容看起来不错。

标签: c gcc compiler-construction


【解决方案1】:

试试

-DARGUMENT=2

【讨论】:

  • @bob:即使是最好的人也会发生这种情况。
【解决方案2】:

gcc test.c -o test -D ARGUMENT=2

【讨论】:

    【解决方案3】:

    您也可以使用gcc test.c -o test -DARGUMENT

    ARGUMENT 将被定义为没有值,但仍然可以使用#ifdef 和朋友来检查它。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-01-18
      • 2012-05-12
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多