Работа над программой, которая сравнивает аргумент с текстом в файле (мой файл - словарь, содержащий много английских слов).
Сейчас приложение работает только полностью совпадающие строки.
Хотел узнать, есть ли способ сравнить введенную частичную строку с полной строкой в файле и получить совпадение. Например, если аргумент ap, он будет соответствовать Apple, application alliance ext.
# include <iostream>
# include <fstream>
# include <cstdlib>
# include <string>
using namespace std;
int main ( int argc, char *argv[] ) {
ifstream inFile;
inFile.open("/Users/mikelucci/Desktop/american-english-insane");
//Check for error
if (inFile.fail()) {
cerr << "Fail to Open File" << endl;
exit(1);
}
string word;
int count = 0;
//Use loop to read through file until the end
while (!inFile.eof()) {
inFile >> word;
if (word == argv[1]) {
count++;
}
}
cout << count << " words matched." << endl;
inFile.close();
return 0;
}
ap
должен совпадать сalliance
? Тогда просто сравните первые символы. В противном случае вот ваш дубликат. И этаeof
вещь ... не делайте этого, а вместо этого погуглите, почему / что делать. - person LogicStuff   schedule 11.12.2016