Tengo un c++ tarea que quiere para mí trabajar con una entrada que consta de n numeradas frases y estas oraciones pueden ser separados por un espacio o una línea nueva. Así que la tarea indica que la entrada va a terminar con la ocurrencia de carácter @. En c++ ¿cómo puedo tomar una entrada con n numeradas penas de hasta @ ?
0
La pregunta no es específ claramente insuficiente para dar una respuesta.
Pero la lectura de hasta un personaje appearscan ser hecho con un simple bucle. Incluso si introduce más datos después de la @, será ignorado.
La tenemos la completa entrada en una cadena y dividir a lo largo de la '.'
Tal vez el siguiente puede dar al menos una idea . . .
#include <string>
#include <iostream>
#include <vector>
#include <regex>
const std::regex re{R"(\.)"};
int main() {
// Here we store the complete input up to a @
std::string data{};
char c{};
// Read until @ found
while (std::cin.get(c) and c != '@')
data += c;
// Split input into sentences.
std::vector sentence(std::sregex_token_iterator(data.begin(), data.end(), re, -1), {});
// Show all sentences
for (const std::string& s : sentence) std::cout << s << '\n';
}