Forum: Mikrocontroller und Digitale Elektronik globale Variable in C18


von Meike (Gast)


Lesenswert?

Hallo,

kann mir jemand von euch verraten wie ich eine globale Variable 
definieren muss damit ich sie in mehreren Modulen verwenden kann.

Also wenn ich main.c habe und dort eine Variable mit z.B. char variable; 
definiere kann ich sie in test.c nicht nutzen.
Das würde ich aber gerne.

Viele Grüße
Meike

von Mark B. (markbrandis)


Lesenswert?

Die globale Variable muss außerhalb von main() und nicht innerhalb einer 
anderen Funktion definiert werden:

1
char globale_variable;
2
3
int main()
4
{
5
  tu_was();
6
  /* ... */
7
  return 0;
8
}

Ach ja und in anderen Übersetzungseinheiten (Quellcode-Dateien) muss man 
die Variable bekannt machen:

extern char globale_variable;

von Meike (Gast)


Lesenswert?

Hallo Mark,

Danke für die schnelle Antwort. Genau das mit dem extern war das 
Problem. Jetzt funktioniert es.

Viele Grüße
Meike

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.