Почему строку нельзя изменить в новых компиляторахC++

Программы на C++. Форум разработчиков
Anonymous
Почему строку нельзя изменить в новых компиляторах

Сообщение Anonymous »

Во времена Turbo C/C++ вы могли легко изменять строки, как в

Код: Выделить всё

char * str = "Hello";
str[1] = '1'; //it will make it H1llo;
Теперь они хранятся в .bss, и вам не разрешено изменять их напрямую. Почему? Не усложняет ли это изменение строки?

Есть ли какое-нибудь быстрое решение (но без побочных эффектов)? Я умею использовать strdup() как функции, но напрямую изменять строки было очень весело.

Подробнее здесь: https://stackoverflow.com/questions/173 ... -compilers

Вернуться в «C++»