Slavka_online
@Slavka_online
Интересная личность

Где хранить глобальные переменные типа структура?

Хочу хранить все данные поступающие от датчиков в одном месте, и объединить их в структуру, но поля этой структуры будут меняться в разных файлах, (для каждого интерфейса свои функции), так вот где ее объявить? возник вопрос потому как я уже пробовал объединить все функции одного интерфейса в структуру например
struct typeSSP{
 void (*initSSP1)();
 void (*sendSSP1)();
};

в SSP.h в самом конце после прототипов функций и в SSP.c ее инициализировать
struct typeSSP ssp = { ...};
а в главном файле перед main() прописывать extern struct typeSSP ssp;
все работало до поры до времени, пока не пришлось например в файле с описанием прерываний таймера обращаться в ssp и следовательно подключать SSP.h на что компилятор стал жаловаться на множественное объявление, не знаю как исправить эту ошибку.
  • Вопрос задан
  • 371 просмотр
Пригласить эксперта
Ответы на вопрос 2
@MiiNiPaa
В заголовочных файлов ничего объявлять и инициализаровать не надо.
Переместите extern struct typeSSP ssp; в заголовочный файл, а само объявление ssp и его инициализацию в SSP.c
Ответ написан
zoonman
@zoonman
⋆⋆⋆⋆⋆
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы