#include<iostream>
#include<string>
#include<unordered_map>
#include<sstream>
using namespace std;
void Print_frequence(const string& str)
{
unordered_map<string, int> ump;
stringstream ss(str);
string word;
while (ss >> word)
ump[word]++;
unordered_map<string, int>::iterator itump;
for (itump = ump.begin(); itump != ump.end(); itump++)
cout << itump->first << " 出现了 " << itump->second << "次" << endl;
return;
}
int main()
{
string str = "i like jogging and jogging and i";
Print_frequence(str);
system("pause");
}
用到stringstream的原因是它可以很好的处理语句之间空格问题ss>>word跳过了空格