lgrube96:
Naja...werde das später mal ausprobieren, mal schauen ob das wirklich der Fehler war !
Der zu große Index in "msg[13] = 0;" ist zwar ein Fehler, aber wenn Du stattdessen "msg[12] = 0;" schreibst, ist es wohl immer noch falsch.
Denn die ganze Kopierreihenfolge zwischen msg und lastRead ist meiner Meinung nach genau vertauscht für den Zweck, für den Du es benötigst.
Statt:
for(int i = 0; i < 13; i++)
{
msg[i] = lastRead[i];
}
msg[13] = 0;
sollte es wohl eher heißen:
for(int i = 0; i < 13; i++)
{
lastRead[i]=msg[i];
}
lastRead[12] = 0; // diese Zeile ist doppelt gemoppelt, das \0 Zeichen wird schon in der Schleife kopiert
oder wenn ich es geschrieben hätte mit weniger Code ohne Schleife:
strcpy(lastRead,msg);
Soweit ich den Code überblicke, sollte er dann wenigstens so funktionieren, wie Du es wohl beabsichtigst.