Есть проект, файл с функцией main, есть ещё много файлов .c в одном из них подпрограмма прерывания, которая пишет в глобальную переменную ADCConvertedValue. Эту переменную хочу использовать в других файлах.
Ну я понимаю, самое простое - поставить перед мэйном, но если например у меня функция в отдельном файле, и тогда не будешь же каждый раз при подключении файла к проекту прописывать глобальные переменные в главный файл проекта. Напрашивается решение - запихнуть переменную в заголовочный файл и делать инклюд, но тут у меня почему-то выходят грабли, заголовочник ведь обычно прописывается в одноимённый файл .c и в результате я получаю ошибку:
>identifier 'ADCConvertedValue' redeclared as 'int'
Да, и почему-то если я делаю инклюд перед мэйн, то в других файлах эта переменная не видна, приходится инклюдить во все файлы проекта, которые её юзают.
В общем я вконец запутался, расскажите популярно, как объявить переменную так, чтоб она была видна везде, и чтоб это было культурно, куда писать extern и что должно быть в заголовочнике.
Примечание:
То есть переменную в заголовочнике не надо объявлять?
Примечание:
Спасибо, всё получилось :)
RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.
Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.
Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.