Spec-Zone.ru › GCC 4 CPP

2 Файлы заголовков

Файл заголовка — это файл, содержащий объявления C и определения макросов (см. Макросы), которые должны использоваться несколькими исходными файлами. Вы запрашиваете использование файла заголовка в вашей программе, включив его с помощью препроцессорной директивы C ‘#include’.

Файлы заголовков служат двум целям.

  • Системные файлы заголовков объявляют интерфейсы к частям операционной системы. Вы включаете их в свою программу, чтобы предоставить необходимые определения и объявления для вызова системных вызовов и библиотек.
  • Ваши собственные файлы заголовков содержат объявления интерфейсов между исходными файлами вашей программы. Каждый раз, когда у вас есть группа связанных объявлений и определений макросов, большинство из которых необходимы в нескольких разных исходных файлах, рекомендуется создать для них файл заголовка.

Включение файла заголовка приводит к тем же результатам, что и копирование файла заголовка в каждый исходный файл, которому он нужен. Такая копирование отнимает много времени и подвержено ошибкам. С файлом заголовка связанные объявления находятся только в одном месте. Если их нужно изменить, их можно изменить в одном месте, и программы, которые включают файл заголовка, автоматически будут использовать новую версию при следующей компиляции. Файл заголовка избавляет от работы по поиску и изменению всех копий, а также от риска того, что неудачный поиск одной копии приведет к несогласованности в программе.

В C обычно файлы заголовков имеют имена, заканчивающиеся на .h. Лучше всего использовать только буквы, цифры, дефисы и символы подчеркивания в именах файлов заголовков, а также не более одной точки.

  • Синтаксис включения
  • Работа с включением
  • Путь поиска
  • Файлы заголовков, включаемые только один раз
  • Альтернативы обертки #ifndef
  • Вычисленные включения
  • Оборачивающие файлы заголовков
  • Системные файлы заголовков

© Free Software Foundation
Licensed under the GNU Free Documentation License, Version 1.3.
https://gcc.gnu.org/onlinedocs/gcc-4.9.4/cpp/Header-Files.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API