-         

Ergebnis 1 bis 5 von 5

Thema: Int main(void)

  1. #1
    Neuer Benutzer Öfters hier
    Registriert seit
    22.12.2011
    Beiträge
    8

    Int main(void)

    Anzeige

    Hallo,
    was bedeutet eigentlich dieses Int main(void), welches man in jedes Programm für den Asuro schreibt?
    Gruß
    Tom

  2. #2
    Moderator Robotik Einstein Avatar von Kampi
    Registriert seit
    21.11.2009
    Ort
    Monheim, Nordrhein-Westfalen, Germany
    Alter
    28
    Beiträge
    3.517
    Blog-Einträge
    9
    Hi,

    das int main(void) kennzeichnet das eigentliche Programm welches im Mikrocontroller abgearbeitet wird. Es beginnt bei der ersten Zeile der Schleife int main(void) und läuft dann durch bis zum while (1). Das while(1) ist dann die eigentliche Schleife für das Programm. In dem Teil int main(void) kommen einmalige Sachen (z.B. UART initialisieren, I²C initialisieren, usw.).
    Schaut ruhig mal auf meiner Homepage vorbei :
    http://kampis-elektroecke.de

    Oder folge mir auf Google+:
    Daniel Kampert

    Es gibt 10 Arten von Menschen. Die einen können Binär, die anderen nicht.

    Gruß
    Daniel

  3. #3
    Erfahrener Benutzer Roboter-Spezialist Avatar von robo_tom_24
    Registriert seit
    04.02.2012
    Ort
    Burgenland, Österreich
    Beiträge
    485
    Das ist wie gesagt das eigentliche Programm welches vom µC aufgerufen wird...
    Es gibt dann noch Unterprogramme, nur das ist dann eine andere Geschichte

    Lies dir mal ein paar Tutorials durch - und nicht vergessen, google ist dein Freund

  4. #4
    Moderator Robotik Visionär Avatar von radbruch
    Registriert seit
    27.12.2006
    Ort
    Stuttgart
    Alter
    54
    Beiträge
    5.785
    Blog-Einträge
    8
    Hallo

    Man sollte das eher aus der Entwicklung von C betrachten als das C-Programm von einem übergeordneten Betriebssystem aufgerufen wurde und man auch Parameter an das Programm übergeben konnte. Um einen gemeinsamen Einstiegspunkt zu erhalten einigete man sich auf den Namen main() der Hauptfunktion.

    Das void bedeutet, die Funktion erwartet beim Aufruf keinen Parameter. Weil die Microkontroller mit einem Reset starten und die Funktion main() nicht als Unterprogamm aufgerufen wird kann man eh keine Parameter übergeben.

    Das int wiederum bedeutet, dass es sich um eine Funktion handelt die einen Integerwert als Rückgabewert an das aufrufende Programm zurückgibt. Damit kann die Funktion Fehlermelungen oder Stati zurückmelden. Da es bei Microkontrollern aber kein aufrufendes Programm gibt, braucht man auch nichts zurück geben. Im Gegenteil, die Funktion main() darf nie beendet werden! Trotzdem muss ein return()-Befehl vorhanden sein, das wird durch das int zwingend vorgegeben.

    Gruß

    mic

    Atmel’s products are not intended, authorized, or warranted for use
    as components in applications intended to support or sustain life!

  5. #5

Ähnliche Themen

  1. return in Void-Funktion?
    Von Jaecko im Forum C - Programmierung (GCC u.a.)
    Antworten: 2
    Letzter Beitrag: 08.08.2010, 14:07
  2. void und int
    Von 1udo1 im Forum C - Programmierung (GCC u.a.)
    Antworten: 3
    Letzter Beitrag: 06.02.2009, 15:29
  3. void-Funktion
    Von Wsk8 im Forum C - Programmierung (GCC u.a.)
    Antworten: 2
    Letzter Beitrag: 02.01.2009, 13:50
  4. Frage zu Unterprogrammen (void main..)
    Von M@tes im Forum C - Programmierung (GCC u.a.)
    Antworten: 4
    Letzter Beitrag: 24.04.2008, 15:20
  5. int batterie(void)
    Von RoboLeo im Forum Asuro
    Antworten: 2
    Letzter Beitrag: 17.01.2007, 19:14

Berechtigungen

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