Hallo, ich möchte ein string aufteilen und benutze folgende funktion:
1 | int strtoken(char *str, char *separator, char *token[]) |
2 | {
|
3 | int i = 0; |
4 | |
5 | token[0] = strtok(str, separator); |
6 | |
7 | while ( token[i]) |
8 | {
|
9 | i++; |
10 | token[i] = strtok(NULL, separator); |
11 | }
|
12 | return ( i ); |
13 | }
|
14 | |
15 | |
16 | char buffer[] = "hamburg:120;"; |
17 | S8 charsRead; |
18 | int parts; |
19 | char separator[] = {';',':'}; |
20 | char *part[3]; |
21 | |
22 | |
23 | |
24 | parts = strtoken(buffer, separator, part); |
in part[0] soll dann hamburg stehen in part[1] 120 das funktioniert z.B. 5 mal richtig und dann steht manchmal in part[0] nur hamb kann mir jemand weiterhelfen wo mein Fehler liegt? Gruß Michael