69729

Включення файлів

Домашняя работа

Информатика, кибернетика и программирование

Наприклад загальні для декількох початкових файлів визначення іменованих констант і макровизначення можуть бути зібрані в одному файлі що включається і включені директивою include у всі початкові файли.

Украинкский

2014-10-09

25.5 KB

0 чел.

Самостійне вивчення

Тема 6: Включення файлів

Синтаксис:

#include "ім'я шляху"

#include <ім'я шляху>

Директива #include включає вміст початкового файлу <ім'я шляху> якого задано, в поточний компільований початковий файл.Наприклад, загальні для декількох початкових файлів визначення іменованих констант і макровизначення можуть бути зібрані в одному файлі, що включається, і включені директивою #include у всі початкові файли. Файли, що включаються, використовуються також для зберігання оголошень зовнішніх змінних  і  абстрактних типів  даних, що розділяються  декількома початковими файлами.

Препроцесор обробляє файл, що включається, таким же чином, начебто цей файл цілком входив до складу ісходного файлу в крапці, де записана директива #include. Текст, що включається, також може містити директиви препроцессора. Препроцесор виконує обробку включаємого файлу, а потім повертається до обробки первинного ісходного файлу.

Ім'я шляху є ім'ям файлу, якому може передувати ім'я пристрою і специфікація директорії. Синтаксис імені шляху визначається угодами операційної системи.

Препроцесор використовує поняття стандартних директорій для пошуку файлів, що включаються. Стандартні директорії задаються командою PATH операційної системи. Препроцесор веде пошук до тих пір, поки не знайде файл із заданим ім'ям. Якщо ім'я шляху задано однозначно (повністю) і заключено в подвійні лапки, то препроцесор шукає файл тільки в директорії, специфікованій заданим ім'ям шляху, а стандартні директорії ігнорує. Якщо задана в лапках специфікація не утворює повне ім'я шляху, то препроцесор починає пошук файлу, що включається, в поточній робочій директорії (тобто в тій директорії, яка містить початковий файл, в якому записана директива #include.

Директива #include може бути вкладеною. Це значить, що вона може зустрітися у файлі, включеному іншою директивою #include. Коли препроцесор знаходить вкладену директиву #include, він починає пошук файлу в поточній директорії, відповідній початковому файлу, який містить цю вкладену директиву #include. Після цього препроцессор переходить до пошуку в поточній директорії, яка відповідає охоплюючому початковому файлу, тобто тому, по відношенню до якого дана директива #include є вкладеною. Допустимий рівень вкладеності директив #include залежить від реалізації компілятора. Процес пошуку в охоплюючих директоріях продовжується до тих пір, поки не буде проглянута поточна директорія   найпершого  початкового файлу, тобто файлу, ім'я якого було задано при виклику компілятора мови Сі.

Потім препроцесор продовжує пошук в директоріях, вказаних в командному рядку компіляції, і, нарешті, шукає в стандартних директоріях.

Якщо ж ім'я шляху вкладено в кутові дужки, то препроцесор взагалі не здійснюватиме пошук в поточній робочій директорії, а відразу почне пошук в директоріях, специфікованих в командному рядку компіляції, а потім в стандартних директоріях.

Об'єднання символьних рядків і склеювання лексем в іменованній константі, яка використовується в директиві #include, використовувати не можна. Результат розширення константи повинен відразу читатися як коректна директива #include.


 

А также другие работы, которые могут Вас заинтересовать

28807. Внешняя политика Советского государства в 20-30-х гг. Почему в данный период не удалось создать систему международной безопасности 15.85 KB
  Почему в данный период не удалось создать систему международной безопасности Внешняя политика СССР в 2030 гг. СССР добился снятия экономической блокады. 1924-1933 годы постепенного признания СССР.В конце 20х годов произошло резкое ухудшение международного положения СССР.
28808. Истоки и причины Второй Мировой войны. Причины поражения СССР на первом этапе ВОВ. Формирование антигитлеровской коалиции 15.85 KB
  Причины поражения СССР на первом этапе ВОВ. Ослабление СССР репрессиями Сталина только в армии было арестовано и убито около 4 млн человек. Пассивность Франции и Великобритании с целью натравить Гитлера на СССР. Стремление каждой страны Европы достичь своих целей участвуя в войне например Польша мечтала напасть на СССР Италия мечтала захватить соседние земли.
28809. Подготовка и осуществление коренного перелома в ВОВ. Путь к победе. Какие события позволяют судить о решающем вкладе СССР в победу над Германией 18.15 KB
  Наибольшего размаха и напряжения военные действия достигли на советскогерманском фронте где летом в вооруженной борьбе принимало участие с обеих сторон более 700 расчетных дивизий до 12 млн. К осени протяженность советскогерманского фронта достигла почти 6200 км максимальной величины за всю войну. В результате героического сопротивления советских войск наступление противника на южном крыле советскогерманского фронта было остановлено. Несмотря на то что на большинстве участков наступление противника было остановлено положение на южном...
28810. СССР в послевоенные годы. Была ли неизбежна «холодная война» 15.58 KB
  И тем не менее с точки зрения выяснения того когда и как она началась думается имеет существенное значение то какими виделись послевоенные отношения между США и СССР Рузвельту и какой линии он намеревался придерживаться в этом вопросе. В последовавшей затем беседе с советским послом президент особо подчеркнул что считает поддержание и развитие дружественных отношений между США и СССР абсолютно необходимыми и соответствующими интересам обеих стран. Вслед за этим вскоре после состоявшейся в ноябре 1943 года в Тегеране встречи руководителей...
28811. Почему «Хрущевское десятилетие» вошло в историю страны как «оттепель»? Укажите основные направления хрущевских реформ 14.42 KB
  Смерть Сталина устранение от власти Берии положило конец массовому террору в стране. Критика культа личности Сталина разбудила советское общество порождала веру надежду на изменение к лучшему.
28812. Эпоха «развитого социализма» 1965-1985. Почему все попытки модернизации социализма были неудачны 15.78 KB
  Почему все попытки модернизации социализма были неудачны 14 октября 1964 г. Брежнева не был эпохой застоя как утверждала перестроечная историография как не стал и не мог стать периодом официально провозглашенного развитого социализма. Эпоха развитого социализма – закономерный и неизбежный этап кризисного развития советской тоталитарной системы.
28813. СССР в 1985-1991. Каковы основные причины и цели политики «перестройки» 14.88 KB
  Развал СССР. Перестройка общее название совокупности политических и экономических перемен проводившихся в СССР в 1986 1991 годах. В ходе перестройки особенно со второй половины 1989 года после I Съезда народных депутатов СССР резко обострилось политическое противостояние сил выступающих за социалистический путь развития и партий движений связывающих будущее страны с организацией жизни на принципах капитализма а также по вопросам будущего облика Советского Союза взаимоотношений союзных и республиканских органов государственной...
28814. Распад СССР. Становление суверенной России 16.01 KB
  Представители русского населения в Верховном Совете СССР создали фракцию Союз отстаивая права русского населения в союзных республиках которое непременно пострадало бы и пострадало в случае распада СССР.Начавшееся потепление в отношениях с Западом шло лишь за счет уступок со стороны СССР в 1989 г. СССР терял статус великой державы.
28815. Дайте сравнительный анализ программам политических партий в России в начале 20в. 15.01 KB
  Умеренноконсервативноекрыл о возглавляла партия октябристов Союз 17 октября. названа в честь Манифеста 17 октября. Программные цели: дальнейшее развитие политических свобод дарованных Манифестом 17 октября идеал ограниченная конституционная монархия.