Pytania otagowane jako variadic-macros

10
Standardowa alternatywa dla sztuczki ## __ VA_ARGS__ GCC?
Istnieje dobrze znany problem z pustymi argumentami dla makr wariadycznych w C99. przykład: #define FOO(...) printf(__VA_ARGS__) #define BAR(fmt, ...) printf(fmt, __VA_ARGS__) FOO("this works fine"); BAR("this breaks!"); Użycie BAR()powyższego jest rzeczywiście nieprawidłowe zgodnie ze standardem C99, ponieważ rozszerzy się do: printf("this breaks!",); Zwróć uwagę na końcowy przecinek - nie działa. Niektóre …

12
Preprocesor C ++ __VA_ARGS__ liczba argumentów
Proste pytanie, na które nie mogłem znaleźć odpowiedzi w sieci. Jak znaleźć liczbę argumentów w makrach argumentów o zmiennej liczbie argumentów? Jestem w porządku z preprocesorem doładowania, jeśli ma rozwiązanie. Jeśli to robi różnicę, próbuję przekonwertować zmienną liczbę argumentów makr, aby zwiększyć sekwencję, listę lub tablicę preprocesora w celu dalszego …
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.