关于csh中的g ++ -D

时间:2015-04-25 04:39:02

标签: c shell csh

我有一个C代码的csh如下:

foreach i (COARSE_STATIC, COARSE_DYNAMIC, FINE_STATIC, FINE_DYNAMIC)
    foreach j (1 2 4 8 12 16 20 24 28 32 36 40 44 48 52 56 60)
       g++ -o proj2 project2.cpp -O3 -lm -openmp -D=$i -DNUMT=$j
       ./proj2 >> OUT
     end
     echo '\n' >> OUT
end

我对-D=$i有一些问题,我知道这是不正确的,我不知道如何修改它来表达:

#define COARSE_STATIC

有谁能告诉我如何使用它?

1 个答案:

答案 0 :(得分:3)

如果您只需要定义宏,请不要放置=符号。

g++ ... -D$i

此外,您有第一个列表中的逗号,作为分隔符,而不是第二个。第二个是正确的,你应该删除第一个中的昏迷。 (否则,您将尝试定义宏CORESTATIC,。)

相关问题