Directivele #ifdef și #ifndef pot fi utilizate oriunde se poate utiliza directiva #if. Dacă parametrul ID a fost definit, atunci operatorul # ifdefidentifier este echivalent cu operatorul #if 1. Dacă identificatorul parametrului nu a fost definit sau definiția acestuia a fost anulată utilizând directiva #undef. atunci este echivalentă cu operatorul #if 0. Aceste directive verifică prezența sau absența numai a identificatorilor definiți cu directiva #define. și nu identificatorii declarați în codul sursă C sau C ++.
Aceste directive sunt destinate numai compatibilității cu versiunile anterioare ale limbii. Este de preferat să folosiți expresia constantă definită cu directiva #if.
Directiva #ifndef verifică opusul condiției verificate de directiva #ifdef. Dacă identificatorul nu este definit (sau definiția acestuia a fost ștearsă de directiva #undef), condiția este îndeplinită (adevărată, non-zero). În caz contrar, condiția nu este îndeplinită (false, valoarea este 0).
Un bloc care este specific numai sistemelor Microsoft
Valoarea ID poate fi trecută din linia de comandă utilizând parametrul / D. Acesta vă permite să definiți până la 30 de macrocomenzi.
Aceasta vă permite să verificați dacă există o definiție, deoarece definițiile pot fi transmise din linia de comandă. De exemplu:
Finalizarea blocului, care se referă numai la sistemele Microsoft
Afișare: Mijlocit protejat
Această pagină a fost utila? Da, nu
Au rămas 1500 de caractere
Mulțumesc! Vă mulțumim pentru feedbackul dvs. Opinia dvs. este foarte importantă pentru noi.