Конспект заняття на тему: "Препроцесор. Директиви препроцесора."

Про матеріал
Даний матеріал містить ознайомлення з поняттями «препроцесор» та «директиви препроцесора», з особливостями форм та використання директив препроцесора.
Перегляд файлу

Препроцесор. Поняття препроцесора. Директиви препроцесора.

 

Поки ви втілюєте в життя програмні новорічні фантазії, я спробую додати страшків у казочку . Чисто теоретичні знання.

В спілкуваннях програмістів ви можете почути ці терміни, які вже прочитали в темі заняття. На перший погляд, все виглядає незрозумілим. Але насправді ви з ними вже давно знайомі і працюєте, тож давайте спробуємо розібратись, а головне – зрозуміти.

Почнемо з поняття «препроцесор». Як завжди, розберемо слово «по камінчиках» за значенням.

«Процесор». Як ви його розумієте?  З точки зору комп’ютера це його «серце», тобто, основний компонент, який керує всіма частинами і обчисленнями.

Пам’ятаєте одне з правил побудови слів, що стосується закінчень –ер та –ор?

Авіація – авіатор, інженерія – інженер, майструвати – майстер, редакція – редактор.

За аналогією слово «процес» - це якась дія, так? А «процесор» - інструмент для якихось дій.

Наш основний знаток: Вікіпедія каже що процесор – це частина, що реалізує процес переробки інформації і координує роботу периферійних пристроїв. У комп'ютері може бути декілька процесорів, що працюють паралельно — такі комп'ютери називають багатопроцесорними.

 А з програмної точки зору: складна логічна програма, що є частиною системи програмування; внутрішня система обробки даних, що перетворює кодовану  інформацію, отриману від системи введення. 

Йдемо далі . Додаємо до слова «процесор» інший камінчик – префікс «пре». Він означає? Правильно, щось попереду: «перед», як то, наприклад, «передумова» - умова, яка іде попереду якоїсь, можливо, іншої умови.

Аналогічно і з нашим терміном «препроцесор». Його найкраще розглядати як окрему програму, яка виконується перед компіляцією. При запуску програми препроцесор переглядає ваш код зверху  вниз, крок за кроком, в пошуку директив. Що означає це слово? Від англ. direction – напрямок, вказівник.

Власне, так і є: директиви - це спеціальні команди, які починаються з символу #, але не закінчуються, як звичні команди, крапкою з комою. Так, правильно, одну директиву ви одразу можете і назвати, ви використовуєте її в кожній програмі. Це, звичайно, #include. Є кілька типів директив, які ми і розглянемо.

Першою буде названа вами директива #include (від англ. іnclude – включити) . Вона має дві форми:

Знайома вже вам #include <filename>, яка повідомляє препроцесору шлях пошуку файла в місцях зберігання системних бібліотек мови С ++. Частіше за все ви будете використовувати цю форму при підключенні заголовків файлів з Стандартної бібліотеки C ++, як, наприклад, #include <windows.h>.

Друга форма #include "filename", яка повідомляє препроцесору шлях до файла в поточній директорії проекту. Якщо його там не виявиться, то препроцесор почне перевіряти системні шляхи і будь-які інші, які ви вказали в налаштуваннях вашої IDE. Ця форма використовується для підключення користувальницьких (ваших)  заголовків файлів.

Директиву #define (від англ. define – визначити) можна використовувати для створення макросів - правил, які визначають конвертацію ідентифікатора в зазначені дані. Є два основних типи макросів: макроси-функції і макроси-об'єкти.

Для прикладу, директива

#define NAME NICK

Спрацює таким чином, що в подальшій вашій програмі ідентифікатор NAME  скрізь буде замінений на NICK.

Користування цими директивами може мати трошки небезпечні наслідки, тому ми поки що не будемо з ними близько знайомитись. Але задля загальної інформації скажу, що є ще директиви умовної компіляції  #ifdef (від скороченого «if defined» -  «якщо визначено»),  #ifndef(від скороченого «if not defined» -«якщо не визначено») та ін. Бажаючим ознайомитись – Google на допомогу.

 

docx
Додано
15 січня 2021
Переглядів
413
Оцінка розробки
Відгуки відсутні
Безкоштовний сертифікат
про публікацію авторської розробки
Щоб отримати, додайте розробку

Додати розробку