Почему строковые литералы const?
Известно, что в C ++ строковые литералы являются неизменными, и результат изменения строкового литерала не определен. Например
char * str = "Hello!";
str[1] = 'a';
Это приведет к неопределенному поведению.
Кроме того, строковые литералы помещаются в статическую память. Таким образом, они существуют в течение всей программы. Я хотел бы знать, почему строковые литералы имеют такие свойства.