使用stringstream获取行分隔符

getline delimiter using stringstream

本文关键字:分隔符 获取 stringstream 使用      更新时间:2023-10-16

似乎没有在空格内分隔单词。

尝试将中间的单词分开,并将其存储在first和second中。

cin >> name; //input name 
stringstream file (name);
getline(file,first, ' '); //seperate the name with the first name and last name using space 
getline(file,second, ' ');

Replace

cin >> name;

getline(cin, name); //input name

cin >>只读取到第一个空格。如果您执行cout << name;检查正在读取的内容,您就会意识到这一点—这是调试的第一步。

当你用cin >> name;读取初始输入时,它只读取到第一个空白字符

然后你试着在空白处把它分成两部分,它不包含。

的简单方法:

cin >> first >> second;

或者,如果您从std::getline(cin, name);而不是cin >> name;开始,那么其余的应该正确工作。