Здравствуйте. Мне хотелось бы понять, как можно реализовать изменение строки, введенной прежде с помощью функции getline в консольном приложении.
Например:
string Input;
cout << "Введите строку: ";
getline(cin, Input);
cout << "Изменить строку: ";
А далее поместить строку из Input в консоль, при этом, что бы можно было бегать курсором по строке и менять нужные нам символы на другие, а затем сохранить эту строку в новом виде.
#include<string>
#include<iostream>
#include<windows.h> //решение не кросплатформенное, работает только на Windows
using namespace std;
int main()
{
COORD coord;
string Input;
cout << "Введите строку: ";
getline(cin, Input);
cout << "Изменить строку: " << "\n";
CONSOLE_SCREEN_BUFFER_INFO bi;
GetConsoleScreenBufferInfo(GetStdHandle(STD_OUTPUT_HANDLE), &bi); //записываем информацию о буфере экрана в консоли в bi
coord.X = bi.dwCursorPosition.X; //получаем координаты курсора (это будут координаты начала строки после ее вывода)
coord.Y = bi.dwCursorPosition.Y;
cout << Input;
SetConsoleCursorPosition(GetStdHandle( STD_OUTPUT_HANDLE ), coord); //устанавливаем курсор на ранее полученные координаты
getline(cin, Input);
cout << Input;
return 0;
}
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Работаю под Visual StudioКак узнать, есть ли в программе утечка памяти или нет?