bornbash 0 18 апреля, 2011 Опубликовано 18 апреля, 2011 · Жалоба ДОброго времени суток! Форумчане, никак не получается победить ошибку при компиляции "Error - symbol 'cycl_buf' has multiple definitions." Возникает при попытке подключить файл заголовка в нескольких сишных файлах проекта. Повторного объявления переменной больше нет ни в одном файле проекта. Содержание файла-заголовка: // USART #ifndef __RINGBUFFER_H #define __RINGBUFFER_H #define LEN 0x10 /* Длина буфера */ unsigned char cycl_buf[LEN]; unsigned int bbuf=0; unsigned int ebuf=0; unsigned int count1_outQ=0; unsigned int count2_outQ=0; #endif Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Vlad27 0 18 апреля, 2011 Опубликовано 18 апреля, 2011 · Жалоба Прочтите здесь, там еще есть много толковой информации. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
_Pasha 0 18 апреля, 2011 Опубликовано 18 апреля, 2011 · Жалоба Повторного объявления переменной больше нет ни в одном файле проекта. Компиляторы не обязаны понимать объявление переменных в хедере как extern по умолчанию. Более того, те компилеры, которые так делают, концептуально неправильны. Объявите переменные в хедере extern и опишите их один раз в том модуле, где Вы считаете необходимым их размещение. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
bornbash 0 18 апреля, 2011 Опубликовано 18 апреля, 2011 · Жалоба Спасибо большое! Теперь осилю ) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться