Назад к задачамПолучайте помощь с лайвкодингом в реальном времени с Sobes Copilot
Junior — Senior
7
Переписывание функции экранирования символов
Условие задачи
Дана реализация функции mark_char, предназначенной для добавления символа обратного слеша перед каждым вхождением указанного символа в строке. Текущий вариант обхода строки реализован неверно, из‑за чего результат может быть некорректным. Необходимо исправить алгоритм так, чтобы он последовательно проходил по всем символам исходной строки и возвращал новую строку, где каждый найденный символ будет экранирован.
std::string mark_char(const std::string& src, char target) {
if (src.empty()) {
return "";
}
std::string out;
for (char ch : src) {
if (ch == target) {
out += '\\';
}
out += ch;
}
return out;
}