Einbinden von Header Datein / C Programm

Gast #3136307
Lesenswert?
• ▲
▼
Hallo,

ich habe eine Frage. Kann man einen definierten Datentyp, den man in 
einer Header Datei A verwendet hat:

typedef struct
{
  ULTRASONIC_MEAS_SETTINGS_d  us_settings;
  unsigned int      us_measurement_counter_value;
  unsigned int      us_measurement_distance_value;
  bool        us_measurement_error;
}ULTRASONIC_MEAS_d;

auch in einer anderen Header Datei B verwenden?

Leider meckert mein Compiler und ich kann mir nicht wirklich erklären 
warum dies nicht gehen sollte. Ich möchte ungern mir nochmals einen 
identischen Datentyp mit anderen Namen schaffen.

Fehlermeldung:

"conflicting types of ULTRASONIC_MEAS_d..."
und "previous declaration of ULTRASONIC_MEAS_d"

Ich möchte gern Daten die einem C Modul generiert werden über mein 
Hauptmodul an einen anderes C Modul weitergeben. Doch leider 
funktioniert es nicht so wie ich möchte.

Kann mir das jemand verständlich erklären und eine Lösungsweg aufzeigen.

Ich verwende die neuste Version vom AVR Studio.

Vielen Dank.
#3136311
Lesenswert?
• ▲
▼
Ja.
Im header vorher aber noch ein ifndef
1
#ifndef BLUBB_H_
2
#define BLUBB_H_
3

4
typedef struct
5
{
6
  ULTRASONIC_MEAS_SETTINGS_d  us_settings;
7
  unsigned int      us_measurement_counter_value;
8
  unsigned int      us_measurement_distance_value;
9
  bool        us_measurement_error;
10
}ULTRASONIC_MEAS_d;
11

12
#endif
Damit verhinderst du dass es mehrfach deklariert wird.

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.