Meinst du sowas ?
char array[] = "Acde;A1;3.B1;90000;"; // das letzte ; ist optional !
char* strings[10]; // Ergebnis: 4 Teile {"Acde" "A1" "3.B1" "90000"}
int teilen(char* input, char* result[], char sep) {
char* p = input;
if (*p == 0) return 0;
result[0] = p;
while (*p != sep && *p != 0)p++;
if (*p == sep) {
*p++ = 0;
return 1 + teilen(p, result + 1, sep);
}
else return 1;
}
void setup() {
Serial.begin(9600);
int parts = teilen(array, strings, ';');
Serial.print(parts); Serial.println(" Teile: ");
for (auto p:strings)
if (p) Serial.println(p);
else Serial.println (" --- ");
}
strtok ist besser, da nicht rekursiv !