读入一个英文的文档,然后建立一个单词引用索引表,也就是说,对于该文档中出现的所有单词,按照字母顺序进行排序,并且每个单词后面跟着它在文档中出现的行号。然后把这个索引表显示出来,同时保存在一个输出文件中。为了方便处理,假定文档长度不超过1000个字符,行数不超过20行,文档中的单词最长不超过20个字母。噪声单词,如“a, an, and, are, in, is, of, or, that, the, this, to, have”等单词不出现。
比如读入的是1.txt,则输出的单词索引表为2.txt
#include <iostream>
#include <fstream>
#include <set>
#include <map>
#include <string>
#include <cctype>//isalpha, isupper, tolower
#include <cstdlib>//exit
using namespace std;
static int s_lineNum = 1;//static line number
int main(int argc, char *argv[])
{
if (argc < 3)
{
cout << "usage: " << argv[0] << "infile" << "outfile" << endl;
cout << "generate a word list from an English file,