Директиви #ifdef і #ifndef (c

Директиви #ifdef і #ifndef можна використовувати в будь-якому місці, в якому може використовуватися директива #if. Якщо параметр ідентифікатор був визначений, то оператор # ifdefідентіфікатор еквівалентний оператору #if 1. Якщо ж параметр ідентифікатор не було визначено або його ухвала скасована за допомогою директиви #undef. то він еквівалентний оператору #if 0. Ці директиви перевіряють наявність або відсутність тільки ідентифікаторів, визначених до директиви #define. а не ідентифікаторів, оголошених в вихідному коді C або C ++.

Ці директиви призначені тільки для сумісності з попередніми версіями мови. Переважно використовувати константний вираз defined (ідентифікатор) до директиви #if.

Директива #ifndef перевіряє протилежність умови, що перевіряється директивою #ifdef. Якщо ідентифікатор не визначений (або його визначення було видалено директивою #undef), то умова виконується (true, нульове значення). В іншому випадку умова не виконується (false, значення дорівнює 0).

Блок, що відноситься тільки до систем Microsoft

Значення ідентифікатора можна передати з командного рядка за допомогою параметра / D. Він дозволяє визначити до 30 макросів.

Це дозволяє перевірити, чи існує визначення, оскільки визначення можна передавати з командного рядка. наприклад:

Завершення блоку, що відноситься тільки до систем Microsoft

Показ: успадкувала Захищений

Чи була ця сторінка корисною? Та ні

1500 символів Якого залишилося

Дякуємо! Дякуємо за відгук. Ваша думка дуже важлива для нас.

центри розробки

Спільнота

Зв'яжіться з нами

Схожі статті