Pytania oznaczone «preprocessor»

319
Łącząc C ++ i C - jak działa #ifdef __cplusplus?

Pracuję nad projektem, który ma dużo starszego kodu C. Zaczęliśmy pisać w C ++ z zamiarem ostatecznej konwersji starszego kodu. Jestem trochę zdezorientowany co do interakcji między C i C ++. Rozumiem, że poprzez owinięcie C kodu z extern "C"C ++ kompilator nie będzie Magiel C pseudonimów, ale nie...

299
MIN i MAX w C

Gdzie są MINi MAXzdefiniowane w C, jeśli w ogóle? Jaki jest najlepszy sposób na ich wdrożenie, tak ogólnie i bezpiecznie, jak to możliwe? (Preferowane są rozszerzenia / wbudowane kompilatory kompilatorów głównego

248
Preprocesor zrzutu GCC definiuje

На этот вопрос есть ответы на Stack Overflow на русском : Как узнать список всех определённых макросов? Czy istnieje sposób, aby gcc / g ++ zrzucił definicje preprocesora z wiersza poleceń? Mam na myśli takie rzeczy __GNUC__, __STDC__i tak...

233
#pragma efekt paczki

Zastanawiałem się, czy ktoś mógłby mi wyjaśnić, co #pragma packrobi oświadczenie preprocesora, a co ważniejsze, dlaczego ktoś chciałby go użyć. Sprawdziłem stronę MSDN , która oferowała pewien wgląd, ale miałem nadzieję usłyszeć więcej od osób z doświadczeniem. Widziałem to już wcześniej w kodzie,...

209
# Zdefiniować makro do drukowania debugowania w C?

Próba utworzenia makra, którego można użyć do drukowania komunikatów debugowania po zdefiniowaniu DEBUG, jak na przykład następujący pseudo kod: #define DEBUG 1 #define debug_print(args ...) if (DEBUG) fprintf(stderr, args) Jak można to osiągnąć za pomocą

183
Przeciążenie makra na liczbę argumentów

Mam dwa makra FOO2i FOO3: #define FOO2(x,y) ... #define FOO3(x,y,z) ... Chcę zdefiniować nowe makro FOOw następujący sposób: #define FOO(x,y) FOO2(x,y) #define FOO(x,y,z) FOO3(x,y,z) Ale to nie działa, ponieważ makra nie przeciążają wielu argumentów. Bez modyfikacji FOO2i FOO3czy istnieje...