如何在 C++ 中读取由空格分隔的字符串? [关闭]
Posted
技术标签:
【中文标题】如何在 C++ 中读取由空格分隔的字符串? [关闭]【英文标题】:How to read a string separated by spaces in C++? [closed] 【发布时间】:2014-02-21 16:20:03 【问题描述】:用户引入了一个像“1 10 4 1 53”这样的字符串,我必须读取字符串中的所有数字。我怎样才能在 C++ 中做到这一点?
【问题讨论】:
这个问题和类似的问题已经在这里讨论过无数次了;你试过搜索吗? 关键字是“*** C++ 读取文件整数空格分隔” 【参考方案1】:如果您不关心速度,请使用stringstream
。
#include <string>
#include <sstream>
#include <iostream>
using namespace std;
int
main()
string str("1 10 4 1 53");
stringstream ss(str);
int n;
while (ss >> n)
cout << n << endl;
return 0;
【讨论】:
【参考方案2】:只需将其放入istringstream
并使用普通的>>
。
【讨论】:
【参考方案3】:您可以将输入作为字符串,然后您可以使用strtok() 对字符串进行标记以分隔字符串。
【讨论】:
1980 调用;他们希望恢复他们的字符串标记化技术......(那是 三十四 年前!!)以上是关于如何在 C++ 中读取由空格分隔的字符串? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 scanf 从用户输入中获取字符串( char * ),由双引号分隔并包含空格 [关闭]