"Могу ли я сделать этот тип чтения в C ++ из уже напечатанной строки?"
Хорошим подходом было бы сохранить выходные данные вашей программы в памяти, чтобы ваша функция readCoordinates
могла получить доступ к случайному символу в O (1). Я бы определенно использовал std::vector<std::string> outputBuffer
, что позволило бы вам что-то вроде этого: outputBuffer[0][3]
.
Пример:
#include <iostream>
#include <vector>
#include <string>
std::vector<std::string> outputBuffer;
char readCoordinates(int line, int character)
{
if (line < outputBuffer.size() && character < outputBuffer[line].size())
return outputBuffer[line][character];
return 0;
}
int main()
{
std::string myOutput("Hello World !");
outputBuffer.push_back(myOutput);
std::cout << myOutput << std::endl;
if (char c = readCoordinates(0, 3))
std::cout << c << std::endl;
}
выход:
Hello World !
l