В основном эта программа ищет файл .txt для слова, и если он находит его, он печатает строку и номер строки. Вот что я до сих пор.Чтение частей строки (getline())
Код:
#include "std_lib_facilities.h"
int main()
{
string findword;
cout << "Enter word to search for.\n";
cin >> findword;
char filename[20];
cout << "Enter file to search in.\n";
cin >> filename;
ifstream ist(filename);
string line;
string word;
int linecounter = 1;
while(getline(ist, line))
{
if(line.find(findword) != string::npos){
cout << line << " " << linecounter << endl;}
++linecounter;
}
keep_window_open();
}
решаемая.
Это именно то, что я искал. Однако у меня все еще есть проблема. Он выводит результаты, в которых нет слова. Я не включил! - string :: npos, потому что я не знал, что вы имели в виду. Я отредактирую код, чтобы показать вам, что у меня есть. – trikker
! = String :: npos - это значение, которое вы сравниваете, если слово отсутствует в строке. То есть, если результат, возвращаемый find, не равен строке :: npos, а не означает, что вы нашли слово, в противном случае он будет игнорировать строку – Milan
Забудьте об этом, я включил! - string :: npos и работал. Я просто сделаю некоторые исследования по этому вопросу. – trikker