3 Макросы
A макрос — это фрагмент кода, которому присвоено имя. Всякий раз, когда используется имя, оно заменяется содержимым макроса. Существует два вида макросов. Они различаются в основном тем, как они выглядят при использовании. Объектно-подобные макросы при использовании напоминают объекты данных, функционально-подобные макросы напоминают вызовы функций.
Вы можете определить любой допустимый идентификатор как макрос, даже если это ключевое слово C. Препроцессор ничего не знает о ключевых словах. Это может быть полезно, если вы хотите скрыть ключевое слово, такое как const от более старого компилятора, который его не понимает. Однако оператор препроцессора defined (см. Определённые) никогда не может быть определен как макрос, и именованные операторы C++ (см. Именованные операторы C++) не могут быть макросами при компиляции C++.
© Free Software Foundation
Licensed under the GNU Free Documentation License, Version 1.3.
https://gcc.gnu.org/onlinedocs/gcc-14.2.0/cpp/Macros.html