使用stringstream获取行分隔符
getline delimiter using stringstream
似乎没有在空格内分隔单词。
尝试将中间的单词分开,并将其存储在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;
开始,那么其余的应该正确工作。
相关文章:
- C++为构建时间获取QDateTime的可靠方法
- lambda参数转换为constexpr技巧,然后获取带链接的数组
- 如何使用 < 和 > 命令获取 c++ 中的输入和输出?
- 使用指针从C++中的数组中获取最大值
- 如何获取std::result_of函数的返回类型
- C++获取两个分隔符之间的字符串并替换它
- 获取具有同一分隔符的多个实例的字符串的子字符串
- 推荐一种在未输入获取行分隔符时引发异常的方法?
- 如何阻止 cin.getline() 导致控制台在找不到分隔符时重复获取用户输入?
- 如何获取标准 C/C++ 中的文件分隔符符号:/ 或 \
- 如何使用分隔符获取所有第二个字段的总和
- 在分隔符之间获取字符串
- C++使用逗号作为分隔符的获取线多个变量类型
- 如何在C++中获取特定于平台的路径分隔符
- C++ 获取两个分隔符字符串之间的字符串
- 获取分隔符为/的给定字符串的最后一个目录的文本
- 使用 Boost.File system 获取平台的路径分隔符
- 分割字符串并在不同的分隔符之前获取值
- 使用stringstream获取行分隔符
- c++正则表达式.获取带分隔符的字符串