Полу-Off о соглашениях в языке Си (+)
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)
|
Отправлено
Вопрос 03 января 2003 г. 13:41
|
|
|
|
Когда я пишу программы на Си, то все функции и переменные у меня находятся в файлах с расширением *.c
К ним я делаю *.h файлы - туда я помещаю описание переменных, которые находятся в *.c файлах со словом extern и описание функций, которые реализованы в *.c файлах. Если я хочу в какой-то другой функции в другом *.c - файле использовать переменную или функцию, которые находятся в другом файле, то я просто включаю соответствующий *.h файл :
#include "myfile.h"
Но вот мой начальник в *.h - файлы вставляет не описание переменных (extern), а само объявление и инициализацию переменных. Такой *.h - файл можно включать только один раз. Я говорю, что надо в таком случае сделать объявление переменных в *.c файле и включить его в проект, к нему сделать *.h файл, где все эти переменные будут объявлены как extern. Мол, файлы с расширением *.H - это хедеры, куда принято помещать описание переменных, а не их объявление. Он мне возразил - а покажи, где такое соглашение или хотя бы намек на него, что такое принято (в h-файлы помещать только описание, а не объявление). Так вот может кто-то где-то видел в книге о Си хоть какой-то намек на то, что принято, а что не принято помещать в файлы с расширением *.h - дайте ссылку на эту книгу и на соответствующую главу.
Составить ответ
|||
Конференция
|||
Архив
Ответы
- Ответ: Удивительно, что Ваш начальник не придерживаеться и этого с) — Jackal (03.01.2003 20:26, 142 байт)
- Ты все делаешь правильно. А начальник - нет. Отправь его книжки читать. :) — Yuriy (03.01.2003 19:02, пустое)
- Ну, кому еще полемика не надоела?(+) — abivan (03.01.2003 18:17, 1220 байт)
- Спасибо всем ответившим - действительно это описано в книге Страуструпа (+) — Вопрос (03.01.2003 16:45, 982 байт, ссылка)
- Маленькое дополнение — Oldring (03.01.2003 16:42, 415 байт)
- У Страуструппа черным по белому написано - никогда не следует включать в .h-файлы объявления переменных! Б.Страуструпп, Язык программирования С++, третье издание, главу не помню. — ... (03.01.2003 15:06, 262 байт)
- Ответ: делаю так: — Jedi (03.01.2003 14:55, 1715 байт)
- Твой начальник просто дебил. И десять умных не убедят одного дурака. У Страуструппа черным по белому написано, что следует и что не следует помещать в .h-файлы. — ... (03.01.2003 14:53, пустое)
- Попробуй сменить шефа. — Oldring (03.01.2003 14:47, пустое)
- Твой шеф прав. Это типичный метод Jean J. Labrosse. Не видать тебе премии ;-) — Alexandr (03.01.2003 14:38, 56 байт)
- Думаю, что по вопросам стандарта ничего не докажите, а вопрос стиля? (даже самого дурного, стандартом не оговаривается.) — Щ.С. (03.01.2003 14:30, пустое)
- Ответ: Можно попробовать найти нужную информацию в книге — Bill (03.01.2003 14:19, 841 байт)
Перейти к списку ответов
|||
Конференция
|||
Архив
|||
Главная страница
|||
Содержание
|||
Без кадра
E-mail:
info@telesys.ru