Werte aus einem CharArray ohne Sonderzeichen auslesen

Moin Leute,
ich habe mir mittels I2C einige Daten zuschicken lassen , welche ich vorerst in einem Char-Array abgespeichert habe in Form von:

char Daten[20] = [12345,678,9];
Die Zahlen zwischen dem Komma können von 0 bis 999999 alle Werte annehmen.

Besteht die Möglichkeit, dass ich die Zahlen in Extrafeldern abspeichern kann, also ohne die Komma dazwischen, oder direkt als ein int-Wert. Das mit den int-Werten ist eher zweitrangig, da ich diese auch durch Umwaldern per atoi() bekommen kann.

z.B. char Feld1[6] = [12345]; char Feld2[6]= [678]; usw.
oder int F1 = 12345; int F2 = 678; ...

LG
Kritzl

Kritzl:
Besteht die Möglichkeit, dass ich die Zahlen in Extrafeldern abspeichern kann, also ohne die Komma dazwischen, oder direkt als ein int-Wert.

Ja, z.B. so:

  int Part0 = atoi(strtok(Daten, ",")); 
  int Part1 = atoi(strtok(NULL, ","));       
  int Part2 = atoi(strtok(NULL, ","));

Du must nur darauf achten, wenn die einzelnen Werte größer werden, musst du die Variablen (long, uint8_t, o.ä.) anpassen

Ok, dann werde ich es mal so probieren.
Danke

Wenn die Werte bis 999999 gehen können braucht man atol() (ascii to long) statt atoi()

Serenifly:
Wenn die Werte bis 999999 gehen können braucht man atol() (ascii to long) statt atoi()

Ja, stimmt, hatte ich nicht berücksichtig.

Danke für die Berichtigung.