Hallo
es sollte auch folgendes funktionieren bei der Stringverarbeitung:
Aber Vorsicht mit den str...-Befehlen. Die fressen enorm viel Speicherplatz.Code:char puffer[10]; char *zeiger_auf_puffer = puffer; int main (void) { #define LEN_STR_1 3 char teil_str_1 [LEN_STR_1 + 1]; // 3 Byte langer String + \0 #define LEN_STR_2 7 char teil_str_1 [LEN_STR_2 + 1]; // 7 Byte langer String + \0 for (;;) { while (!flagvonderISR) ; zeiger_auf_puffer = puffer; teil_str_1 = strncpy (zeiger_auf_puffer, LEN_STR_1); teil_str_1 [LEN_STR_1] = '\0'; // String in C abschliessen zeiger_auf_puffer += LEN_STR_1; /* JA, die Vorgaengerlaenge */ teil_str_2 = strncpy (zeiger_auf_puffer, LEN_STR_2); teil_str_2 [LEN_STR_2] = '\0'; // String in C abschliessen /* Und ab hier kann mit den beiden Teil-Strings gearbeitet werden */ flagvonderISR = 0; }






Zitieren

Lesezeichen