Телесистемы
 Разработка, производство и продажа радиоэлектронной аппаратуры
На главную   | Карта сайта | Пишите нам | В избранное
Требуется программист в Зеленограде
- обработка данных с датчиков; ColdFire; 40 тыс.
e-mail:jobsmp@pochta.ru

Телесистемы | Электроника | Конференция «Микроконтроллеры и их применение»

Почему в WinAVR выдается сообщение "multiple definition" в следующей ситуации ...

Отправлено MikhailSh (192.168.100.78,83.242.253.134) 02 июля 2010, г. 10:40


При переходе с IAR в WinAVR столкнулся с тем что (код упрощен):
1 файл "Define.c":

#include "Define.h"

int main(void)
{
;
}

2 файл "Define.h":

#ifndef _DEF_H
#define _DEF_H

const unsigned char code[3] = {0x18, 0xDE, 0x89};

#endif

3 файл "Func.с":

#include "Func.h"

void f(void)
{
;
}

4 файл #include "Func.h":

#include "Define.h"

выдает сообщение об ошибке хоть и есть директива #ifndef, которая должна исключить повторные определения. Но если убрать инициализацию, ошибки нет.


Составить ответ | Вернуться на конференцию

Ответы


Отправка ответа
Имя*: 
Пароль: 
E-mail: 
Тема*:

Сообщение:

Ссылка на URL: 
URL изображения: 

если вы незарегистрированный на форуме пользователь, то
для успешного добавления сообщения заполните поле, как указано ниже:
введите число 69:

Перейти к списку ответов | Конференция | Раздел "Электроника" | Главная страница | Карта сайта

Rambler's Top100 Рейтинг@Mail.ru
 
Web telesys.ru