Statische C-String-Zuordnungsfrage
Betrachten Sie den folgenden Code:
char* str = "Hello World";
memcpy(str, "Copy\0", 5);
Während des Speichervorgangs tritt ein Segmentierungsfehler auf. Verwenden Sie jedoch diesen Code:
char str[12];
memcpy(str, "Hello World\0", 12);
memcpy(str, "Copy\0", 5);
Das Programm erzeugt keinen Segmentierungsfehler.
Tritt das Problem bei der Zuordnung des Speichers auf dem Stapel zum Datenabschnitt auf?