循环无法正确处理“ \ n”比较

时间:2018-10-20 22:19:18

标签: c++ c++11 input while-loop comparison

我试图从输入文件中读取以下常规格式:

1 2 3
2 1
3 1

1 3 4 5
3 1 2
2 3
4 1
5 1

为图构造一个邻接表,其中第一个数字是顶点号,而第二个数字是顶点。图形之间用空行分隔。我制作了一个函数来获取序列中的下一个数字,该数字在检测到空格或'\ n'时停止写入。但是,我的nextChar与'\ n'的比较并没有导致它退出循环,并且stoi()抛出了std :: invalid_argument,我以为我已经在while循环中说明了这一点。我不确定自己在这里做错了什么,也不知道如何按照我希望的方式来修复代码。

*** CODE REDACTED ***

这是第三次尝试编码以实现此目的。我已经尝试过>>流提取器,但是它不起作用,因为每个数据文件中都有多个图形,并用空行分隔,并且流提取器未检测到我需要的空行,因此我知道要开始一个新图。

0 个答案:

没有答案