Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 14.06.2015, 16:49   #1
RAFA91
Заблокирован
 
Регистрация: 06.02.2011
Сообщений: 1,999
По умолчанию Уровни отладки

Всем доброго дня !

Подскажите пожалуйста почему при выполнении строки

Код:
#if DEBUGLEVEL < HIGH
я получаю на экран сообщение от

Код:
#else
 
#define PIMA(x) cout << "\n*** PIMA(x) "<< #x << " = " << x <<"\n";
Код:
#include<conio.h>
 
#include <iostream>
 
using namespace std;
 
 
enum LEVEL{NONE, LOW, MEDIUM, HIGH};
 
 
#define DEBUGLEVEL NONE
 
#if DEBUGLEVEL < HIGH
 
#define PIMA(x)
 
#else
 
#define PIMA(x) cout << "\n*** PIMA(x) "<< #x << " = " << x <<"\n"; 
 
#endif
 
 
int main()
 
{
    int a = 0, *p = &a;
    
    PIMA(a);
 
    cout<<"\na = "<<a<<"\n";
 
    getch();
    
        return 0;
 
}
RAFA91 вне форума Ответить с цитированием
Старый 16.06.2015, 23:41   #2
_Bers
Старожил
 
Регистрация: 16.12.2011
Сообщений: 2,329
По умолчанию

препроцессор - не компилятор.
он ничего не знает о синтаксисе языка.

он работает только с текстом/дефайнами препроцессора.

то есть, вы не енумы сравниваете, а обычный текст.
_Bers вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
мандатная политика безопасности. назначить рандомно уровни Чайничек. Паскаль, Turbo Pascal, PascalABC.NET 1 15.04.2013 21:53
уровни в БД Deniska12 Помощь студентам 1 21.03.2012 12:08
уровни Deniska12 PHP 1 21.03.2012 11:56
Уровни доступа linux Hemul PHP 0 24.08.2011 17:33
переписать из паскаля в делфи(выдать уровни на ногу порта) ovram Фриланс 4 04.01.2011 22:04