globale Variable wie definieren?

Gast #1445463
Hi

Ich tüftle an einem Programm in C18 herum. Momentan hab ich 
Schwierigkeiten, eine Variable einzurichten, die in allen Funktionen 
gelten soll. Sie steht jetzt am Anfang von main.c vor den Funktionen. 
Das Problem ist, dass die Variabel bereits in den Funktionen benötigt 
wird, die per header-datei (am Anfang von main.c) eingebunden werden. 
Deshalb bringt der Compiler auch immer für die eingebundenen 
code-dateien Fehler, dass die Variabel noch nicht definiert sei.


lcd.c:162:Error [1105] symbol 'cursor' has not been defined

ich hab mich auch durch das microchip c18 tutorial gewühlt, bin aber 
nicht schlauer geworden. Weiß jemand Rat?
Gast #1445469
Eigentlich gehören keine Funktionen in Header Dateien.
Aber egal, du könntest am Anfang der Headerdatei ein "extern soundso 
cursor" setzen und damit die Variable deklarieren. Ist zwar ein bisschen 
von hinten durch die Brust ins Auge, sollte aber gehen.
Moderator (Firma: Titel) Persönliche Seite #1445474
Mach dich mal (z.B. per Suche hier im Forum) schlau zum Thema 
Variablendefinition und Variablendeklaration.

> dass die Variabel bereits in den Funktionen benötigt
> wird, die per header-datei (am Anfang von main.c) eingebunden werden.
So werden keine Funktionen eingebunden...
Sieh mal nach, wie andere das machen.
Gast #1445477
ich meinte auch nicht die Funktionen an sich sondern nur der Name, hab 
mich wohl etwas unglücklich ausgedrückt. Die Funktionen selber liegen in 
den entsprechenden c files

ich versuch mal den Tipp von  uwegw, danke inzwischen

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 17 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

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.