Hallo, im Rahmen eines Projektes arbeite ich an einer Funktion, die vom Benutzer einen Text annimmt und dynamisch genügend Speicher allokiert. Dabei wird in einer Funktion ein Pointer auf ein Char - Feld übergeben. Am Ende soll der ganze Text wiedergegeben werden. Im ersten Schritt werden für den char - Pointer 32 Bytes allokiert. Gebe ich einen Text ein, der nicht länger als 32 Zeichen ist funktioniert alles wunderbar. Ist er länger als 32 Zeichen fordere ich neuen Speicher per realloc an. Wenn ich dann allerdings die Texteingabe beende, werden nur die ersten 9 Felder des char - Arrays beschrieben. Danach folgt noch ein wenig Müll und dann gar nichts mehr. Der String wird einfach abgeschnitten und ich versteh nicht warum. Wären die ersten 32 Zeichen richtig und danach falsch würde das Sinn machen. Aber das er nach der Reallokierung nur 9 Zeichen richtig angibt, versteh ich einfach nicht. Aufgrund der Länge hänge ich den Source Code mal als Datei an.