Я использую макрос, определенный в том же исходном файле:Компилятор жалуется на необъявленную переменную в макро
#define MY_MACRO (a, b,...) (...)
Макрос используется далее в этом файле.
Однако компилятор жалуется:
Ошибка: необъявленная (первое использование в этой функции).
Это действительно странно .. я пропустил что-то очевидное?
Пожалуйста, покажите минимальный пример. – 2501
Если вам нужен макрос функции, скобки для списка аргументов должны немедленно следовать за именем макроса, без пробела. Как и вы, вы определили простую подстановку, где 'MY_MACRO' расширена до' (a, b, ...) (...) ', которая может быть не такой, какой вы хотите. Возможно, вы можете запустить компилятор с помощью переключателя ('-E' в gcc), чтобы показать предварительно обработанный вывод, чтобы помочь вам отслеживать такие проблемы. –
@MOehm: это было! Спасибо! – Iceman