Как не определить определение в командной строке с помощью gcc

Как я во время компиляции неопределяю макрос компилятора, использующий gcc. Я попробовал некоторую компиляцию args к gcc как-D, но я не могу добраться для наблюдения "не определенного" сообщения.

Спасибо

#include <iostream>

#define MYDEF


int main(){
#ifdef MYDEF
  std::cout<<"defined\n";
#else
  std::cout<<"not defined\n";
#endif

}
43
задан Brian Tompsett - 汤莱恩 27 November 2015 в 11:55
поделиться

2 ответа

Вы можете использовать опцию -U с gcc, но она не отменит макрос, определенный в исходных текстах. Насколько я знаю, это невозможно.

50
ответ дан 26 November 2019 в 22:53
поделиться

http://gcc.gnu.org/onlinedocs/gcc-4. 4.2/gcc/Preprocessor-Options.html#Preprocessor-Options

Опции -U казались вам нужными... но опять же вы не можете переопределить определение, содержащееся в исходном коде, не прибегая к дополнительным директивам препроцессора.

.
10
ответ дан 26 November 2019 в 22:53
поделиться
Другие вопросы по тегам:

Похожие вопросы: