Как работают макросы в c?

Доброе время суток.
Использую c без стандартной библиотеки. Но __DATE__ работает почему то. Объясните как реализованы макросы пожалуйста и где посмотреть их реализацию.

ps код выполняется на уровне железа и bios. Вот мне стало интересно, получается что __DATE__ берет дату из bios? В исходниках компилятора сам не разберусь просто
  • Вопрос задан
  • 260 просмотров
Решения вопроса 1
BuriK666
@BuriK666
Компьютерный псих
www.opennet.ru/docs/RUS/cpp/cpp-5.html
'__DATE__'
Этот макрос заменяется на строчную константу, которая указывает дату запуска препроцессора. Эта константа содержит одинадцать символов и выглядит примерно так '"Jan 29 1987"' или '"Apr 1 1905"'.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
@mamkaololosha
Гуглите этапы компиляции. В частности - препроцессор
https://en.wikipedia.org/wiki/C_preprocessor
Ответ написан
Комментировать
@MiiNiPaa
__DATE__, __LINE__ и прочее подобное подставляются самим препроцессором. Реализацию можно посмотрев только скачав исходники компилятора.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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