Я хотел бы прочитать строку символов, пока не достигну запятой, а затем сохранить ее в другой строке.
Я пытался использовать функцию getline
, но, насколько мне известно, она работает только с cin
или с файлом, но не со строкой. Кто-нибудь знает функцию, которая может служить как getline, но для строк? Я оставляю попытку ниже в коде, спасибо заранее.
string paciente="Juan,34,hombre";
string nombre;
getline(paciente,nombre,','); //leo hasta la primera coma e inserto Juan en la cadena paciente
Ты можешь использовать std::stringstream
. Этот класс не mÃ: s, что stream в памяти. Ввиду того, что у него есть тот же интерфейс, что и std::cin
, смоги быть использованным getline
без проблем:
#include <sstream> // std::stringstream
std::stringstream ss;
ss << "Juan,34,hombre";
std::string nombre;
std::getline(ss, nombre, ',');
std::cout << nombre;