Есть пара вопросов...
Как начинающий ембедер взял для учебных целей пару проектов своих старших по цеху коллег. Один проект на си, другой на асме. 
- В проекте на си увидел следующее - имеется несколько СИ-файлов (допустим module_1.c, module_2.c, main.c) и несколько h-файлов.Отдельно для каждого модуля (кроме main.c) имеется h-файл с объявлениями функций (module_1.h, module_2.h), включаемый в соответствующем модуле. Также есть h-файлы, где объявлены глобальные переменные (допустим global_var.h). Эти переменные используются функциями некоторых модулей, но в тексте самих модулей соответствующей директивы о подключении этих h-файлов нет.
И все это хозяйство выглядит таким образом:Код// файл module_1.c
#include "module_1.h"
// далее определения функций, которые используют переменные,описанные в global_var.hКод// файл module_2.c
#include "module_2.h"
// далее определения функций, которые используют переменные, описанные в global_var.hКод// файл main.c
#include "global_var.h"
#include "module_1.c"
#include "module_2.c"
// далее main....
Но я думал, что по общепринятым правилам следовало в одном из модулей обявить все эти глобальные переменные обычным образом, а в остальных - с квалификатором extern...
Правда не знаю, как правильней следует делать - создать два заголовочных файла, global_var.h и global_var_extern.h? А потом в main.c подключить первый, а в остальных модулях - второй файл? Или как? Или же способ моего старшего коллеги тоже к дурному стилю не относится? - В проекте на асме увидел только один здоровенный ассемблерный файл и несколько h-файлов. Самым интересным оказалось то, что в ассемблерном файле код не весь, оставшуюся часть (кучку подпрограмм) я нашел спрятанной в одном из h-файлов...
Полагаю это можно отнести к "плохому тону" в оформлении программы?
Вот... Просто хочется научиться правильно оформлять программы, привить себе хороший стиль в написании и оформлении кода


Гуру! Наставьте на путь истиный!!!