Gast
#1712279
Hallo! Folgender Code bringt mich ins Grübeln... Die Funktion prüft einen Puffer (uarx[]), der im Interrupt mit empfangenen chars befüllt wird, auf zeichenweise Gleichheit mit einem übergebenen String (*command). Wirs ein CR empfangen, wird das flag uarx_done gesetzt und die Funktion kommt über die erste if-Abfrage hinaus.
1 | |
2 | |
3 | |
4 | |
5 | |
6 | |
7 | |
8 | |
9 | |
10 | |
11 | |
12 | |
13 | |
14 | |
15 | |
16 | |
17 | |
18 | |
19 | |
20 | |
21 | |
22 | |
Das funktioniert auch alles soweit, allerdings nur, wenn ich den command-Pointer in der if-Abfrage (if(*++command=='\0')) inkrementiere. Schreibe ich ein einfaches *command++; in die Zeile davor, warnt mich der Compiler damit: warning: value computed is not used. Und außerdem funktioniert dann auch die Abfrage nicht mehr. Kann mir das jemand erklären? Danke, Grüße, Michael