С заголовочными файлами мы уже сталкивались ранее. Буквально в каждой программе мы использовали заголовочный файл "stdio.h". Как вы, наверное, помните, в нем содержатся функции работы со стандартными потоками ввода и вывода (printf(), scanf()).
Нам уже известно, что заголовочные файлы подключаются директивой #include. Те, кто пытался выполнять задания и отправлять свои решения в комментарии, уже знают, что у этой директивы существуют два формата использования.
#include <stdio.h>//и#include "myfun.h"
Напомню, что различия между двумя этими директивами состоят в том, где компилятор будет искать подключаемый файл. Если используется первый вариант (с угловыми скобками), то компилятор ищет подключаемый файл в специальном каталоге, в котором хранятся основные подключаемые файлы. Это правило действует для компилятора Visual Studio и для компилятора Borland C++. У меня, например, это каталоги D:\Program Files\Microsoft Visual Studio 9.0\VC\include иC:\BC\INCLUDE соответственно.
Интереснее работает второй вариант этой директивы (с двойными кавычками). В этом случае компилятор прежде ищет подключаемый файл в рабочем каталоге программы. Если же подключаемый файл не обнаружен в рабочем каталоге, то поиск осуществляется в каталоге, предназначенном для хранения основных подключаемых файлов так, как будто мы использовали первый вариант с угловыми скобками. Именно на этом свойстве и было основано моё замечание, когда я просил вам писать в комментариях #include "stdio.h".
Стоит отметить, что описанные выше особенности работы директивы #include могут отличаться в различных компиляторах. Описанный выше способ тестировался в Visual Studio и Borland C++ 3.1. Я бы советовал каждому проверить, как работают эти директивы в его среде разработки.
Всё описанное выше, так или иначе, вам уже было известно. Теперь переходим непосредственно к основной теме урока. На самом деле каждый из вас может создать свой заголовочный файл. Сразу же встает вопрос, а зачем это вам может пригодиться. Например, вы можете написать свою библиотеку функций. Да-да, как самые настоящие крутые программисты. Добавите туда часто используемые функции, писать которые каждый раз лень, например, поиск максимального и минимального элемента в массиве, или вывод матрицы на экран, или сортировка массива методом «пузырька», или еще что-то. Теперь вам не нужно каждый раз писать эти функции заново, достаточно скопировать, добавить свой заголовочный файл в проект и всё готово. Пользуйтесь на здоровье тем, что уже писали раньше.