Go Down

Topic: Einsteiger benötigt Hilfe (Read 2 times) previous topic - next topic

Thorben

@Eisebaer
Hi. Also, das habe ich in meiner allerersten Auseinandersetzung mit dem Arduino und dieser Aufgabenstellung bereits erledigt. Das reine Lesen von (bei mir waren es) 12 Tasten ist möglich und funktioniert absolut reibungslos. Auch ohne Goto befehle und der Abfrage der 4 "speziellen" Tasten und das hier war quasi mein Versuch, die Abfrage der 4 "speziellen" Tasten mit einzubinden ;)

michael_x

Quote
Außerdem werden Rücksprungadressen in den Stack geschrieben, die bei einem Herausspringen aus einer Schleife mittels goto nicht gelöscht werden und so den Stack zum Überlauf bringen. Das macht den Sketch instabil.


Kinder, Uwe ist ein toller Moderator, aber alles darf man ihm auch nicht glauben.

Mit einem goto kann man nicht aus einer Funktion herausspringen (oder hinein) und so den Stack "zum Überlauf bringen". So einen Mist würde der avrgcc Compiler nicht zulassen. Wo goto syntaktisch zulässig ist, funktioniert es auch. Und es funktioniert auch 1000 Mal, d.h. nach einer halben Sekunde noch.

Aber außer den Sonderfällen continue; break; return; sollte man wirklich ohne Sprünge auskommen und eher an Funktionen denken, wenn man die gleiche Aktion an verschiedenen Stellen im Code braucht.


Falls das missverständlich war: Natürlich kann man Code schreiben, der den RAM zum Überlauf bringt, ohne dass der Compiler es merken kann.
Z.B. ein String Objekt verwenden ;)

uwefed

#17
Feb 06, 2013, 12:27 am Last Edit: Feb 06, 2013, 12:29 am by uwefed Reason: 1
ups

ich hoffe aber bei 99,5% der Fälle liege ich aber richtig  ;) ;) ;)
Grüße Uwe

Eisebaer

habe mitgeschrieben, uwe, 99,63267%, ein insgesamt tragbares ergebnis...

uwefed

Danke Stefan, da bin ich ja beruhigt.  :smiley-roll-sweat: :smiley-roll-sweat:  ;) ;)

Go Up