externe Variable

Gast #2945027
Lesenswert?
• ▲
▼
Hallo,

ich habe ein kleines Verständnisproblem mit externen Variablen:

ich habe in meiner main.c folgende Variable:

extern unsigned char number;

in einer anderen Datei des Projektes wollte ich den Inhalt dieser 
Variablen über Can wegschicken. dafür habe ich diese Variable so 
eingebunden:

extern unsigned char number;

Also genau gleich.

Leider bekomme ich immer einen Fehler beim compilieren:
multiple storage classes in declaration specifiers.

ich habe das selbe mit int Variablen gemacht und da klappt es 1A.

Ich danke euch für eure Hilfe.

Gruß
Jörg
Gast #2945166
Lesenswert?
• ▲
▼
Du musst dir Variable an EINER Stelle ohne das extern erst einmal 
erzeugen bevor du die sie an anderer Stelle mit extern einbinden kannst.

Und sieh dir in deiner Compilerbeschreibung mal an wie der Typ "unsigend 
char" geschrieben werden muss.
Da gibt es fast so viele Varianten wie es Compiler gibt.

zb
uchar
Uchar
uChar
UnsignedChar
.
.
.
.
.
Gast #2945349
Lesenswert?
• ▲
▼
Danke für deine Antwort. Ich habe das Problem nun mit einer getfunktion 
gelöst.
Ich denke das ist die schönere Lösung.
Trotzdem versuche ich noch das Problem mit externen Variablen hzu lösen, 
rein aus interesse.

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.