реклама на сайте
подробности

 
 
> extern struct in KEIL, объявление глобальной стуктуры
Chechelnitsky
сообщение Oct 27 2004, 18:06
Сообщение #1


Участник
*

Группа: Свой
Сообщений: 24
Регистрация: 3-08-04
Пользователь №: 437



Пытаюсь скомпилировать opentcp-arm7-src.zip. Возникла проблема с объявлением глобальной структуры.

Подскажите пожалуйста, а то совсем замучался. Методом тыка нашел комбинацию, которая приемлема для файла main.c, но ошибка возникает в файле tcp.c

Листинг приведен ниже. Компилятор KEIL.

---------------------------------------------------------------------------------------------
file: datatypes.h
---------------------------------------------------------------------------------------------

#ifndef INCLUDE_DATATYPES_H
#define INCLUDE_DATATYPES_H

struct localmach {
int localip;
char localHW[6];
int defgw;
int netmask;
};

typedef struct localmach localmachine_t;

#endif //INCLUDE_DATATYPES_H

---------------------------------------------------------------------------------------------
file: main.c
---------------------------------------------------------------------------------------------

#include "datatypes.h"

localmachine_t localmachine;

int main (void)
{

localmachine.localHW[0] = 0x11;
localmachine.localHW[1] = 0x22;
localmachine.localHW[2] = 0x33;
localmachine.localHW[3] = 0x44;
localmachine.localHW[4] = 0x55;
localmachine.localHW[5] = 0x66;

while (1)
{

}

}

---------------------------------------------------------------------------------------------
file: tcp.c
---------------------------------------------------------------------------------------------

#include "datatypes.h"

extern localmachine_t localmachine;
^^^^^^^^^^^^^^^^^^^^^^^^^^
........

Ошибка: "TCP.C(124): error C53: redefinition of 'localmachine': different compound types"

Это особенность Keil? Или я делаю что-то не так?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
DPL
сообщение Nov 3 2004, 13:46
Сообщение #2


Частый гость
**

Группа: Свой
Сообщений: 88
Регистрация: 15-10-04
Из: Новочеркасск
Пользователь №: 886



Цитата(ALexx @ Nov 3 2004, 03:43 PM)
Все значительно проще:
В окне Output Window в поле со знаком ">" набрать имя переменной, "=", значение переменной (например RxChar=0x35) и нажать Enter.

To ALexx:
Забыл, забыл... smile.gif
Я этот способ использую в скриптах инициализации, чтобы задать нужные значения на входах и загрузить что нужно в память. А в процессе отладки мне кажется более удобным использовать "Watch window" (хотя это, конечно, дело вкуса).
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 17th August 2025 - 23:28
Рейтинг@Mail.ru


Страница сгенерированна за 0.01372 секунд с 7
ELECTRONIX ©2004-2016