char LATfield[20]="5016.21385";
Serial.println(LATfield);
char lat1[]="00"; // Zuweisung von irgendwas mit 2 Zeichen und abschließendem Nullzeichen
strncpy(lat1,LATfield,2); // Umkopieren der ersten 2 Zeichen
Serial.println(lat1);
Serial.println(&LATfield[2]); // String erst 2 Zeichen nach dem Anfang ausgeben)
Serial.println();
char LONfield[20]="01057.92275";
char lon1[]="000";
strncpy(lon1,LONfield,3);
Serial.println(lon1);
Serial.println(&LONfield[3]);
Serial.println(LATfield);
char lat1[]="00"; // Zuweisung von irgendwas mit 2 Zeichen und abschließendem Nullzeichen
strncpy(lat1,LATfield,2); // Umkopieren der ersten 2 Zeichen
Serial.println(lat1);
Serial.println(&LATfield[2]); // String erst 2 Zeichen nach dem Anfang ausgeben)
Serial.println();
Du musst verstehen was C Strings überhaupt sind. Anders als in anderen Sprachen ist das kein komplexer Datentyp. Es ist einfach ein Null-terminiertes Array aus char. Und Arrays sind auch keine komplexen Datentypen, sondern ein Zeiger auf das erste Element. Du vergleicht da einfach die Adressen und die sind natürlich ungleich.
Danke,
bin noch Anfänger auf dem Gebiet, besonders was Strings angeht.
Kann ich den String "12.345" zu einer oder zwei Intergers konvertieren, welche dann so aussehen soll: "12345" oder "12" und "345".
Habe ATOI versucht aber da kommt bei gleichen Ausgangswerten eine andere Integer raus?!?!