@avion123678

Вывод в терминал C++?

Здравствуйте, почему '\b' не работает для '\n'?
#include <iostream>

int main() {
      std::cout << "word\n" << "\b\b\b\b\b";
      return 0;
}

Результатом будет: word
Почему '\b' работает для обычных символов, а для '\n' нет?
  • Вопрос задан
  • 202 просмотра
Пригласить эксперта
Ответы на вопрос 1
Потому, что \n осуществляет перевод на новую строку, а \b на неё уже не может вернуться и что-либо перетереть - он ограничен своей строкой.
У тебя без \n текст word просто переписывает приглашение командной строки.

Похоже, такой код делает, что тебе нужно:

#include <iostream>
  
int main() {
      std::cout << "word" << "\b\b\b\b    \n";
      return 0;
}


После финального \b стоит 4 пробела (они перетрут текст), а потом \n переведёт курсор на новую строку.
И на этой новой строке уже интерпретатор выдаст приглашение ничего не переписав.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы