Wo ist denn data deklariert? Mit "extern uint16_t data;" wird der Compiler ja nur darauf hingewiesen, dass data WOANDERS (mit "uint16_t data") deklariert ist.
Wo ist denn data deklariert? Mit "extern uint16_t data;" wird der Compiler ja nur darauf hingewiesen, dass data WOANDERS (mit "uint16_t data") deklariert ist.
Gruß
Dirk
Hallo Gerhard,
wie Dirk geschrieben hat: "extern" sagt dem Compiler: "Es gibt irgendwo anders eine entsprechende Variablendefinition". Wobei "irgendwo" in dem Kontext letztendlich eine C-Datei sein muss. Letztendlich, weil die entsprechende Quelltextzeile auch in einem via #include eingebundenen Header stehen könnte, in der Regel ist das aber nicht gewollt.
Das ist übrigens der Unterschied zwischen Deklaration ("Es gibt ...") und Definition ("Hier gibt es ..."), eine beliebte Ursache für Verwirrungen. Erst bei der Definition reserviert der Compiler Platz für die Variable, Deklarationen sind erst Mal nur Namen die später in die Speicherstelle umgesetzt werden. Und mit "extern" erfolgt eine solche Deklaration.
mfG
Markus
Tiny ASURO Library: Thread und sf.net Seite
habt vielen Dank Ihr beide ! Ja da habe ich noch Nachholebedarf , trotz etwas C Ausbildung (Shitt Unfall). Kann auch sein das ich da was mit Pascal(Delphi) verwechsle, was für mich bis vor gut 2 Jahren die Programmiersprache eigentlich war. Aber man kann ja halt mal hier nachlesen und auch fragen, denn Keiner ist ja vollkommen...
Danke
Gerhard
PS : ich muss zugestehen, dass ich nach einem Beispiel ind einem Fachbuch gearbeitet habe, also kann man diesen auch nicht "blind" verstehen.
Nun werde ich das dicke DataBeckerBuch "Das Grundlagenbuch, C++" durchackern mal sehen ob das besser ist..
Geändert von oderlachs (23.12.2012 um 11:31 Uhr)
Arduinos, STK-500(AVR), EasyPIC-40, PICKIT 3 & MPLABX-IDE , Linux Mint
Manchmal ist das Forum besser *ggg*. Das Thema Deklaration und Definition z.B. hat Stefan hier (klick) gut erklärt - auch weiter oben in demselben Thread. Danach habs sogar ich kapiert.... dass ich nach einem Beispiel ind einem Fachbuch gearbeitet habe ...
Gehard - und alle - schöne Weihnachten, feiert schön und friedlich - und alles Gute.
Ciao sagt der JoeamBerg
Lesezeichen