Hallo zusammen,
Bei der immer weiteren Vermeidung von Strings in meinem Projekt habe ich ein Array definiert.
const char* relay_name[] = {"Relay 1", "Relay 2", "Relay 3", "Relay 4"};
vorher:
String relay_name[] = {"Relay 1", "Relay 2", "Relay 3", "Relay 4"};
Meine Funktion: ReadEeprom(...) liefert (noch) Strings zurück.
relay_name[0] = ReadEeprom(...) funktioniert logischerweise nicht mehr.
Wie bekomme ich jetzt die Strings als const chars* in das Array und wie kann ich dann wieder lesbare Zeichenketten aus dem Array entnehmen?
Ja. Das hätte ich vielleicht erwähnen sollten. Wenn es nur um RAM sparen geht einfach im Flash lassen. Dann kann man die Strings auch mit strcpy() in ein Array kopieren. Man braucht nur ein paar Hilfs-Makros um dem Compiler zu sagen wo die Dinger genau stehen.
Der Trick dabei ist dass man z.B. 10 Strings mit je 10 Bytes im Flash hat. Aber man braucht nur einen einzigen 10 Byte Puffer im RAM um die nacheinander auszulesen