Moin zusammen,
ich habe grade nach merkwürdigem Verhalten meiner Software gesucht,
Beim Abspecken auf das Nötigste enstand dann folgender Code, der nicht richtig funktioniert:
Wenn man den Wert 1234 drei mal inkrementiert sollte eigentlich 1237 rauskommen, der Wert "value" steht nach dem Aufruf der Funktion aber auf 1235.
Eigentlich eine schöne Prüfungsaufgabe ;)
SiroCode:void add(int* x)
{
*x=*x+1;
*x++;
*x+=1;
}
volatile int value;
void main(void)
{
value = 1234;
add(&value);
}