für meine Anwendung benötige ich globale Variablen, die mit einem bestimmten Wert initialisiert werden, und genau da liegt mein Problem:
wenn ich z.B. das global definiere:
unsigned char test = 2;
dann wird in meinem Programm die Variable “test” trotzdem mit 0 initialisiert. Versteh ich nicht.
Anhand meiner Tests wird anscheinend alles auf 0 initialisiert und ich muss per hand in der Init() Fkt. die daten nochmal initialisieren (das frisst natürlich speicher)…oder mach ich was falsch?
Übrigends wird mein Programm auch größer, sobald ich eine Initialiserung in der Deklaration vornehme…obwohl ja hier die Werte auf 0 bleiben..
Kann mir das jemand erklären und was wäre nun die günstigste Variante?
brauch man eigentlich dann werte, die mit 0 initialisiert werden sollen, nicht mehr explizit zu initialisieren, weil das automatisch geschieht?
PS: Ist eine Initialisierung von Variablen in der Deklaration nur in C++ und nicht in C möglich?