Модераторы: Daevaorn
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Объявление структуры в .h файле 
V
    Опции темы
supercelt
Дата 24.9.2017, 01:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 658
Регистрация: 25.8.2005

Репутация: нет
Всего: 1



Здравствуйте. Язык СИ. Имеется файл rtc.h

Код

#ifndef RTC_H
#define RTC_H
#include "stm32f4xx.h"  
typedef struct{
uint8_t rtc_hours;
uint8_t rtc_minutes;
uint8_t rtc_seconds;
}rtc_struct;
rtc_struct hook;
#endif


и файл rtc.c

Код

#include "rtc.h"
#include <stdio.h>
typedef struct{
uint8_t rtc_hours;
uint8_t rtc_minutes;
uint8_t rtc_seconds;
}rtc_struct;
rtc_struct hook;
hook.rtc_hours = 9;


Этот код конечно же неправильный. Я уже по всякому писал и так и сяк
Даже просто взял пример и скопировал как есть .с файл:

Код

      struct myStruct
      {
        int nInt;
        double dDouble;
        char cChar;
        char *szString;
      };

        struct myStruct sStruct;
        sStruct.nInt = 150;


Выводит ошибку, что  sStruct - неизвестный тип.
Вопрос как и что правильно расписать в этих двух файлах?
Заранее благодарен

Программа Keil uVision, СИ под микроконтроллер
PM   Вверх
volatile
Дата 24.9.2017, 08:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2107
Регистрация: 7.1.2011

Репутация: 37
Всего: 85



Да все правильно, только лишнее повторение.

Цитата(supercelt @  24.9.2017,  01:13 Найти цитируемый пост)
как и что правильно расписать в этих двух файлах?

rtc.h
Цитата(supercelt @  24.9.2017,  01:13 Найти цитируемый пост)
#ifndef RTC_H
#define RTC_H
#include "stm32f4xx.h"
typedef struct{
uint8_t rtc_hours;
uint8_t rtc_minutes;
uint8_t rtc_seconds;
}rtc_struct;
rtc_struct hook; 
#endif 


rtc.с
Цитата(supercelt @  24.9.2017,  01:13 Найти цитируемый пост)
#include "rtc.h"
#include <stdio.h>
typedef struct{
uint8_t rtc_hours;
uint8_t rtc_minutes;
uint8_t rtc_seconds;
}rtc_struct;
rtc_struct hook;
hook.rtc_hours = 9; // <== последняя строка должна быть где-то в функции


Скорей всего компилятор писал что структура уже определена, а не неизвестный тип.
(приводите точное сообщение об ошибках)

PM MAIL   Вверх
supercelt
Дата 24.9.2017, 17:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 658
Регистрация: 25.8.2005

Репутация: нет
Всего: 1



спасибо, заработало
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
Earnest Daevaorn

Добро пожаловать!

  • Черновик стандарта C++ (за октябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика(4.4мб).
  • Черновик стандарта C (за сентябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика (3.4мб).
  • Прежде чем задать вопрос, прочтите это и/или это!
  • Здесь хранится весь мировой запас ссылок на документы, связанные с C++ :)
  • Не брезгуйте пользоваться тегами [code=cpp][/code].
  • Пожалуйста, не просите написать за вас программы в этом разделе - для этого существует "Центр Помощи".
  • C++ FAQ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1183 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.