У меня есть мой код, как показано ниже.Слова считываются из двух файлов и должны быть проверены, чтобы увидеть, есть ли слово в обоих файлах.Я продолжаю получать ошибку сегмента после того, как оно совпадает с первым словом в обоих и добавляет его к новому вектору.Я добавил операторы печати ранее, и он продолжает проходить через цикл с параметром int n, прежде чем он попадет в ошибку seg.Я довольно новичок в 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]);
}
}
}