Подскажите, можно ли делать в C/C++ внутри макросов комментарии?
И если да, то:
1) Как сделать комментарии в тривиальном многострочном макросе:
#define BEGIN_MACRO\
for (...;...;...)\
{\
if (...)\
{
while (...)\
{
2) Как сделать комментарии в многострочной макро-функции?
Комментарии в исходном коде заменяются на пробелы на самых ранних стадиях трансляции: после того, как произошло слияние строк исходного текста по символам \ на концах строк, но еще до того, как начнется какая-то "содержательная" работа препроцессора. Сформировавшееся после обработки \ разбиение на строки при этом сохраняется.
То есть вставлять комментарии в макро можно, но для этого следует использовать именно комментарии в стиле /* ... */ и не забывать ставить \ после такого комментария, чтобы макро не "разорвалось"
#define MAX(a, b) \
/* Maximum */ \
((a) > (b) ? (a) : (b))
Однострочный комментарий // в макро получится использовать только в его последней строчке, ибо такой комментарий с символом \ на конце фактически станет многострочным и "проглотит" и следующую строчку макро.
#define BEGIN_MACRO\
/* Супер-пупер макрос */ \
for (...;...;...)\
{\
if (...)\
{
while (...)\
{
Ну и в функции - точно так же...
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости