- Labornetzteil AliExpress         
Seite 2 von 3 ErsteErste 123 LetzteLetzte
Ergebnis 11 bis 20 von 26

Thema: Headerdatei(en) für ATMega32

  1. #11
    Erfahrener Benutzer Roboter Experte Avatar von sternst
    Registriert seit
    07.07.2008
    Beiträge
    672
    Anzeige

    LiFePo4 Akku selber bauen - Video
    Zitat Zitat von askazo
    Bei der Deklaration einer Variable wird Speicherplatz für sie reserviert. Das ist das ganz normale "Anlegen" einer Variable:

    Code:
    int foo;
    oder
    int foo = 111;
    Willst Du nun diese Variable, sofern sie global ist, in einer anderen Datei bekannt machen, musst Du sie für die andere Datei definieren. Dies geschieht normalerweise in der Headerdatei zu der C-Datei, in der die Variable deklariert ist (analog zu Funktionen). Der einzige Unterschied zur Deklaration ist das Attribut extern.
    Mal ein Beispiel:

    Code:
    Datei: test.c
    ----------------
    //Deklaration der Variable
    int foo;
    
    Datei: test.h
    ----------------
    //Definition der Variable
    extern int foo;
    
    Datei: main.c
    ----------------
    #include "test.h"
    
    //Die Variable foo kann nun auch hier verwendet werden!
    Umgekehrt!

    Definieren = Anlegen
    Deklarieren = Bekannt machen
    MfG
    Stefan

  2. #12
    Erfahrener Benutzer Robotik Visionär Avatar von 021aet04
    Registriert seit
    17.01.2005
    Ort
    Niklasdorf
    Alter
    36
    Beiträge
    5.063
    Jetzt ist alles klar danke sternst und obarallgeier.

    Hier noc einmal der Link. Habe mich verschrieben. Nun funktioniert der Link (getestet). Im obigen Post habe ich ihn auch geändert.

    http://www.inf.hs-anhalt.de/Service/...menfassung.htm

  3. #13
    Erfahrener Benutzer Robotik Visionär Avatar von oberallgeier
    Registriert seit
    01.09.2007
    Ort
    Oberallgäu
    Beiträge
    8.653
    Zitat Zitat von sternst
    ... Deklarieren = Bekannt machen
    Klar - steht bei jedem Grenzübergang: Deklarieren sie ihre mitgebrachte Ware (sprich: machen sie gefälligst ihre Schmuggelgimmicks dem Zoll bekannt).

    Zitat Zitat von 021aet04
    ... vom Fachlehrer ... eine C-Zusammenfassung ...
    Nur - die Ausdrücke Deklaration und Definition hatte der Schlauberger selbst verwendet, aber nicht erklärt *grummel*.
    Ciao sagt der JoeamBerg

  4. #14
    Erfahrener Benutzer Robotik Visionär Avatar von 021aet04
    Registriert seit
    17.01.2005
    Ort
    Niklasdorf
    Alter
    36
    Beiträge
    5.063
    Wir haben vom Fachlehrer die Zusammenfassung bekommen und die Grundlage zum einfachen Programmieren gelernt. Da die µC Programmierung kein eigenes Fach war haben wir es in Elektronik durchgemacht. In Elektronik haben wir von den Grundlagen (Bauelemente) bis Leistungselektronik alles gemacht. Da kann man in 2 Jahren nicht alles genau machen. Der Unterricht wurde so ausgelegt, damit auch die den Stoff verstanden haben die etwas länger brauchten um den Stoff zu verstehen. Mit h-Dateien haben wir nie gearbeitet (außer eingebunden). Wir haben Beispiele gemacht von normalen Ein/ Ausgabe uber Timer/ Counter bis Interrupt und I2C

    Im obigen Link habe ich noch etwas weitergeschaut. Das Inhaltsverzeichniss
    http://www.inf.hs-anhalt.de/Service/index.htm#C

  5. #15
    Erfahrener Benutzer Roboter Experte Avatar von sternst
    Registriert seit
    07.07.2008
    Beiträge
    672
    Zitat Zitat von oberallgeier
    Zitat Zitat von 021aet04
    ... vom Fachlehrer ... eine C-Zusammenfassung ...
    Nur - die Ausdrücke Deklaration und Definition hatte der Schlauberger selbst verwendet, aber nicht erklärt *grummel*..
    Doch, allerdings etwas versteckt als Nebenbemerkung im Abschnitt "Definition einer Funktion".
    Was natürlich auch den unangenehmen Nebeneffekt hat, dass man denken könnte, es beziehe sich nur auf Funktionen.
    MfG
    Stefan

  6. #16
    Erfahrener Benutzer Robotik Visionär Avatar von 021aet04
    Registriert seit
    17.01.2005
    Ort
    Niklasdorf
    Alter
    36
    Beiträge
    5.063
    Ist etwas versteckt, stimmt sternst. Habe hier noch etwas http://www.inf.hs-anhalt.de/Service/...und_Definition

    ....
    Die Definition kann später erfolgen. Eine reine Deklaration nennt man auch Vorwärtsdeklaration.

    Typ Name(Typ1, Typ2, ..., Typn );

    Normalerweise wird die Deklaration gleich mit der Definition der Funktion verbunden.

    Typ Name(Typ1 arg1 , Typ2 arg2 , ..., Typn argn )
    {
    lokale Variable

    Anweisungen
    }

    PS: Das hat nicht mein Fachlehrer geschrieben, sondern wir haben nur einen Ausdruck bekommen.

    MfG Hannes

  7. #17
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    02.11.2005
    Alter
    48
    Beiträge
    1.146
    Zitat Zitat von sternst
    Umgekehrt!

    Definieren = Anlegen
    Deklarieren = Bekannt machen
    Äähh, sorry
    War noch früh....

  8. #18
    Erfahrener Benutzer Robotik Visionär Avatar von oberallgeier
    Registriert seit
    01.09.2007
    Ort
    Oberallgäu
    Beiträge
    8.653
    Zitat Zitat von sternst
    ... Definieren = Anlegen
    Deklarieren = Bekannt machen ...
    Nun müssen wir auch B zum A sagen. Im RNWiki C-Tutorial steht eine ganze Menge. Diese Seite wurde bisher 166877 mal abgerufen - scheint also doch auch gelesen zu werden. ABER es gibt natürlich nirgendwo diese hübsche Erläuterung, die wir jetzt so schön geklärt haben. Nicht dass ich SprinterSB, Inrfb2, PicNick, Plasma und all den vielen Co-Autoren Unvollständigkeit vorwerfen möchte, aber jetzt scheint mir die Zeit gekommen, das Tutorial in so einem nicht unwichtigen Punkt zu ergänzen.

    Das Inhaltsverzeichnis steht und damit auch die Benummerung der Kapitel. Das sollte also wohl nicht geändert werden - sonst gehen lokale Favoriten oder Forum-Links fehl, das wäre dann doch schlecht. Vermutlich passt das in eine Erweiterung, wohl einen Unterpunkt "Vereinbarungen" zu 2 Aufbau eines C-Programmes im Anschluss an den aktuellen Text (der ist ein kurzes Beispielprogramm).

    Wer schreibt die paar Sätze jetzt bitte? Stefan?
    Ciao sagt der JoeamBerg

  9. #19
    Erfahrener Benutzer Roboter Experte Avatar von sternst
    Registriert seit
    07.07.2008
    Beiträge
    672
    Zitat Zitat von oberallgeier
    Das Inhaltsverzeichnis steht und damit auch die Benummerung der Kapitel. Das sollte also wohl nicht geändert werden - sonst gehen lokale Favoriten oder Forum-Links fehl, das wäre dann doch schlecht.
    Das wäre kein Problem. Direkte Links sehen z.B. so aus:
    http://www.rn-wissen.de/index.php/C-Tutorial#Variablen
    Da spielt es keine Rolle, wo genau in der Inhalts-Hierarchie das Unterthema "Variablen" gerade steht. Das Einfügen zusätzlicher Kapitel/Absätze ist also völlig unproblematisch.

    Ein entsprechender Abschnitt war wohl auch ursprünglich eingeplant, denn in "Variablen" gibt es zwei Links zu dem (nicht existierenden) Unterthema "Deklaration und Definition".

    Wer schreibt die paar Sätze jetzt bitte? Stefan?
    Och nö, ich bin eher ein "Korrigierer" als ein "Verfasser".
    MfG
    Stefan

  10. #20
    Erfahrener Benutzer Robotik Visionär Avatar von oberallgeier
    Registriert seit
    01.09.2007
    Ort
    Oberallgäu
    Beiträge
    8.653
    Hmm, ich wollte ja nicht fragen - läuft immer auf dasselbe hinaus, auf "... der der frägt ...". Ich versuch mal etwas - wird ne Weile dauern. Dann melde ich mich.
    Ciao sagt der JoeamBerg

Seite 2 von 3 ErsteErste 123 LetzteLetzte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

Labornetzteil AliExpress