Hi, Bernd
1. GNUAVR hat in jedem Power-on-Reset eine Routine, die sämtliche
Stellen im SRAM und Registern löscht. Also: alle globalen Variablen
starten bei 0.
2. Dasselbe gilt für alle static-Variablen in Deinen Funktionen. Sie
werden auf Null gesetzt, es sei denn, Du hast einen Wert explizit
angegeben.
3. Für lokale variablen in Funktionen kann das nicht gelten, da die vom
Stack genommen werden, wo sie zuvor schon beschrieben waren. Da hilfen
dann hzweo Strategien.
a) jeder lokalen Variable sofort einen wert zuweisen.
b) geduldig warten, bis diese Zuweisung erfolgt.
In meinen privaten Programmen mache ich b), in den beruflichen eher a),
aber da spielen die Prozessorpreise auch keine Rolle.
mfg
Wolfgang Horn