Запитання з тегом «variadic-macros»

10
Стандартна альтернатива трюку ## __ VA_ARGS__ GCC?
Існує добре відома проблема з порожніми аргументами для макросів в змінному числі C99. приклад: #define FOO(...) printf(__VA_ARGS__) #define BAR(fmt, ...) printf(fmt, __VA_ARGS__) FOO("this works fine"); BAR("this breaks!"); Використання BAR()вище дійсно є неправильним згідно стандарту C99, оскільки воно розшириться до: printf("this breaks!",); Зверніть увагу на кінцеву кому - не працює. Деякі …

12
Препроцесор C ++ __VA_ARGS__ кількість аргументів
Просте запитання, на яке я не зміг знайти відповіді в мережі. Як у макросах різних аргументів як знайти кількість аргументів? Я добре з препроцесором підвищення, якщо він має рішення. Якщо це має значення, я намагаюся перетворити змінну кількість макроаргументів для підвищення послідовності, списку або масиву препроцесора для подальшої обробки.
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.