【发布时间】:2018-10-08 04:37:52
【问题描述】:
我的代码如下所示。单词是从两个文件中读入的,需要检查是否在两个文件中都出现了单词。在它与两者中的第一个单词匹配并将其添加到新向量后,我不断收到段错误。我之前添加了 print 语句,它在遇到 seg 错误之前一直使用 int n 参数在循环中运行。我对 C++ 比较陌生,所以最好使用最基本的帮助方式。
#include <iostream>
#include <string>
#include <fstream>
#include <locale>
#include <vector>
using namespace std;
vector<string> wordOne;
vector<string> wordTwo;
fileOne.open(argv[2]);
fileTwo.open(argv[3]);
while (fileOne >> wordsFirstFile) {
wordOne.push_back(wordsFirstFile);
}
while (fileTwo >> wordsSecondFile) {
wordTwo.push_back(wordsSecondFile);
}
fileOne.close();
fileTwo.close();
int sizeOneWord = wordOne.size();
int sizeTwoWord = wordTwo.size();
vector<string> printWords;
int m = 0;
int n = 0;
for (m = 0; m <= sizeOneWord; m++) {
for (n = 0; n <= sizeTwoWord; n++) {
if (wordOne[m] == wordTwo[n]) {
printWords.push_back(wordOne[m]);
}
}
}
【问题讨论】:
标签: c++ vector segmentation-fault string-comparison