Полу-Off о соглашениях в языке Си (+)
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)

миниатюрный аудио-видеорекордер mAVR

Отправлено Вопрос 03 января 2003 г. 13:41

Когда я пишу программы на Си, то все функции и переменные у меня находятся в файлах с расширением *.c
К ним я делаю *.h файлы - туда я помещаю описание переменных, которые находятся в *.c файлах со словом extern и описание функций, которые реализованы в *.c файлах. Если я хочу в какой-то другой функции в другом *.c - файле использовать переменную или функцию, которые находятся в другом файле, то я просто включаю соответствующий *.h файл :
#include "myfile.h"

Но вот мой начальник в *.h - файлы вставляет не описание переменных (extern), а само объявление и инициализацию переменных. Такой *.h - файл можно включать только один раз. Я говорю, что надо в таком случае сделать объявление переменных в *.c файле и включить его в проект, к нему сделать *.h файл, где все эти переменные будут объявлены как extern. Мол, файлы с расширением *.H - это хедеры, куда принято помещать описание переменных, а не их объявление. Он мне возразил - а покажи, где такое соглашение или хотя бы намек на него, что такое принято (в h-файлы помещать только описание, а не объявление). Так вот может кто-то где-то видел в книге о Си хоть какой-то намек на то, что принято, а что не принято помещать в файлы с расширением *.h - дайте ссылку на эту книгу и на соответствующую главу.

Составить ответ  |||  Конференция  |||  Архив

Ответы



Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание  |||  Без кадра

E-mail: info@telesys.ru