volatile char wat[12]; char* pToken = strtok(Buffer, ","); wie bekomme ich wat = pToken; ?
Garnicht, 'wat' ist ein Vektor und die haben normalerweise eine unveränderliche Adresse. Vielleicht meintest du ja sowas wie 'strcpy' oder 'memcpy'?
strcpy(wat, pToken); Ist übrigens nicht ganz ungefährlich, wg. Pufferüberlauf und so.
Danke! .oO(hätte ich auch drauf kommen koennen :-( ) Ich koennte noch die laenge pruefen. darf man da sizeof() verwenden?
1 | char wat[12]; |
2 | char *token; |
3 | |
4 | sizeof(wat) /* 12 */ |
5 | sizeof(token) /* 4 auf 32bit-Pentium */ |
Sonst strlen() oder mit dynamisch-statischem Speicher arbeiten:
1 | size_t len = strlen(token); |
2 | char wat[len + 1]; |
3 | |
4 | strcpy(wat, len); |
So oder so ähnlich müsste das nach C99 gehen.
Man kann auch strncpy() verwenden, das begrenzt die Anzahl der zu kopierenden Zeichen: char *strncpy(char *dest, const char *src, size_t n);
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.