Определяю макро таким образом:
Код
...
int main(int argc, char *argv[], char *envp[])
{
...
if ( argc > 1 ) {
if ( strcmp(argv[1], "-d") == 0 ) {
#define DEBUG 1
printf("DEBUG value is %d\n", DEBUG);
}
else {
#undef DEBUG
}
}
...
#ifdef DEBUG
...
#endif
...
}
int main(int argc, char *argv[], char *envp[])
{
...
if ( argc > 1 ) {
if ( strcmp(argv[1], "-d") == 0 ) {
#define DEBUG 1
printf("DEBUG value is %d\n", DEBUG);
}
else {
#undef DEBUG
}
}
...
#ifdef DEBUG
...
#endif
...
}
Макро определяется, но при этом в код заключенный в #ifdef DEBUG... #endif
мы не попадаем. В чем ошибка?
Спасибо.