我正在尝试使用C+;中的输入文件创建词典+; 我有一个文件.txt,我想在C++中创建一个函数,可以读取文件中的单词,并打印每个单词以及它们出现在文件2中的次数。

我正在尝试使用C+;中的输入文件创建词典+; 我有一个文件.txt,我想在C++中创建一个函数,可以读取文件中的单词,并打印每个单词以及它们出现在文件2中的次数。,c++,lexicon,C++,Lexicon,我正在做一些研究,我知道我可以使用解析器和编写器,还有map类,有什么帮助吗 bool Parser::hasMoreTokens() { if(source.peek()!=NULL){ return true; } else{ return false; } } 这是家庭作业吗?在线查找std::map,std:string,std::ifstream和std::ofstream这是家庭作业吗?在线查找std::map、std:string、std::ifstream

我正在做一些研究,我知道我可以使用解析器和编写器,还有map类,有什么帮助吗

bool Parser::hasMoreTokens() {
  if(source.peek()!=NULL){
    return true;
}
else{
     return false;
}
}

这是家庭作业吗?在线查找
std::map
std:string
std::ifstream
std::ofstream

这是家庭作业吗?在线查找
std::map
std:string
std::ifstream
std::ofstream

使用读取文件,将其存储到s中,使用
int
作为
map
的值,并在每次遇到特定的
字符串时增加该值。接下来,使用将它们写入文件。

使用读取文件,将其存储到s中,使用
int
作为
map
的值,并在每次遇到特定的
字符串时增加该值。接下来,使用将它们写入文件。

如果您希望提高效率并以更少的行数完成此操作,但使用标准库,请尝试以下方法:

#include <fstream>
#include <iostream>
#include <iterator>
#include <set>
#include <string>

int main()
{
     std::ifstream f("text.txt");
     std::istream_iterator<std::string> eof;
     std::multiset<std::string> words( std::istream_iterator<std::string>(f) , eof);

     std::ofstream f_out("text_output.txt");
     for( std::multiset<std::string>::iterator i = words.begin(); i!=words.end(); i = words.upper_bound(*i) )
          f_out << "the word " << *i << " found " << words.count(*i) << " times\n";

}
#包括
#包括
#包括
#包括
#包括
int main()
{
std::ifstream f(“text.txt”);
std::istream_迭代器eof;
std::多集字(std::istream_迭代器(f),eof);
std::流f_out(“text_output.txt”);
for(std::multiset::iterator i=words.begin();i!=words.end();i=words.upper_bound(*i))

f_out如果您希望提高效率,并在尽可能少的行数内完成此任务,但通过使用标准库,请尝试以下方法:

#include <fstream>
#include <iostream>
#include <iterator>
#include <set>
#include <string>

int main()
{
     std::ifstream f("text.txt");
     std::istream_iterator<std::string> eof;
     std::multiset<std::string> words( std::istream_iterator<std::string>(f) , eof);

     std::ofstream f_out("text_output.txt");
     for( std::multiset<std::string>::iterator i = words.begin(); i!=words.end(); i = words.upper_bound(*i) )
          f_out << "the word " << *i << " found " << words.count(*i) << " times\n";

}
#包括
#包括
#包括
#包括
#包括
int main()
{
std::ifstream f(“text.txt”);
std::istream_迭代器eof;
std::多集字(std::istream_迭代器(f),eof);
std::流f_out(“text_output.txt”);
for(std::multiset::iterator i=words.begin();i!=words.end();i=words.upper_bound(*i))

第一步:你首先提供一些代码第一步:你首先提供一些代码我需要帮助实现语法分析器函数你的语法分析器函数做什么?这是一个我必须实现的语法分析器类,我想让语法分析器类能够处理输入操作我是否使用ifstream读取文件,我写道source.open(filename);因此我必须实现parser.cpp中的函数我需要帮助实现parser函数你的parser函数做什么?这是一个我必须实现的parser类,我想让parse类能够处理输入操作我是否使用ifstream读取文件,我写道source.open(filename);因此我必须在parser.cpp中实现一些函数