Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
yekka
385 / 149 / 8
Регистрация: 12.05.2011
Сообщений: 450
#1

вопрос по препроцессорной магии - C++

31.12.2011, 17:04. Просмотров 322. Ответов 0
Метки нет (Все метки)

Для того, чтобы определить макрос AT, замещающийся в процессе компиляции на строку типа "main.cpp:123", я пользуюсь следующим набором макросов:
C++
1
2
3
#define STRINGIFY(x) #x
#define TOSTRING(x) STRINGIFY(x)
#define AT __FILE__ ":" TOSTRING(__LINE__)
Но я не понимаю, почему вышеприведенный вариант работает, а нижеприведенный - нет:
C++
1
2
#define STRINGIFY(x) #x
#define AT __FILE__ ":" STRINGIFY(__LINE__)
Если кто силен в препроцессорной магии, просветите, будьте так любезны.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
31.12.2011, 17:04     вопрос по препроцессорной магии
Посмотрите здесь:

Книга по startup магии - C++
Ребят! Есть какая-нибудь книжка или читабльный man, рассказывают, что делается между зпуском программы и вызовом функции main? И про...

Побитовые операции / осваивание магии 0 и 1 - C++
Вводится короткое целое неотрицательное число. Начиная с младших бит, произвести замену каждой комбинации 01 на 11, а 10 на 00. Как это...

Не хотите ли немного магии? [адресация char] (обращение к масиву через элемент соседнего массива) - C++
Небезызвестные крестики-нолики. Со вчера у меня Компьютер решил изменить свой алгоритм работы и вдруг поставил нолик там, где я его не...

Вопрос по массивав, "институтский" вопрос. - C++
Готовлюсь к летней сессии по программированию. С++ Есть такая вот задачка (привожу как есть) В документации подобного не...

Тупой вопрос. - C++
Вот у меня вопрос. У меня есть 2 числа одно x другое y. Мне надо чтобы допустим число i было равно x,y. Допустим x = 84; y = 16;тогда i =...

Вопрос по ООП - C++
Стоит ли реализовывать программу через классы, если в главной ф-ции предполагается создание только одного объекта? Вобщем решил...

Есть вопрос... - C++
Напишите мне пожалуйста стандартный шаблон для написания программы на массивы.

Вопрос по ООП - C++
Вот код class time { private: int hours; int minutes; public: int sum_time(time object, days day); ...

небольшой вопрос..... - C++
подскажите,пожалуйста,что в этой записи обозначает &(амперсант) перед переменными? int dd, mm, yy; fscanf(Query,"%d.%d.%d", &dd, &mm,...

Вопрос по рекурсии - C++
Добрый вечер. В книжке С++ базовый курс Шилдта стр 175-176 есть пример Отображение строки в обратном порядке с помощью рекурсии (функция...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru