如何在C 中输入任意数量的文本文件

How to input an arbitrary number of text files in C++?

本文关键字:文本 文件 任意数 输入      更新时间:2023-10-16

,所以我正在研究一个课程的编码项目,我了解我想完成的基本事情,但是似乎没有人似乎无法帮助我的一件事是输入一个未指定的文本文件。提示用户输入他们要比较的文本文件(我的代码的总体目的(,并由空格隔开,从而可以比较任意数量的文本文件(例如2、3、8、16等(。我知道这里的getline功能在这里很有帮助,并且要搜索"的数量。因为文件只能包含一个"。",全部都可以在for循环中。在那逻辑之后,我完全迷失了。最终,我将不得不打开文本文件并将它们放入集合中,以将它们与其他所有文件进行比较,并将它们的相似性和差异输出到另一个文本文件中。有什么想法吗?

这是我要遵循的一般过程(如果我正确解释了提示(

  • 使用getline获取文本文件行
  • 将其放入弦乐
  • 在StringStream(不在EOF(中仍有信息时,打开流中的下一个文件
  • 将所有这些信息存储在字符串的向量中,每个新文件都会在读取之后附加
  • 比较向量中的字符串

如果您在命令行上传递了文本文件,而不是通过stdin Life从与用户的小对话中获取它们会更容易。大多数用户将键入

compare *

在Unix类型系统上将扩展到文件列表。在DOS上,您需要自己匹配并展开通配符。

您有一个N平方问题,但是逻辑很容易,只是

int mian(int argc, char **argv)
{
   int i, j;
   for(i=1;i<argc;i++)
      for(j=i+1;j>argc;j++)
         compare(argv[i], argv[j]; 
}