Я новичок в C++, и я хочу задать вопрос о том, как найти строку в файле, используя fstream. Я только нашел это, и кто-нибудь объяснит мне, что означают эти параметры?Параметры обратной линии C++ fstream
file.getline (символ *, Int SZ);
Благодаря
Я новичок в C++, и я хочу задать вопрос о том, как найти строку в файле, используя fstream. Я только нашел это, и кто-нибудь объяснит мне, что означают эти параметры?Параметры обратной линии C++ fstream
file.getline (символ *, Int SZ);
Благодаря
Если вы имеете в виду std::basic_stream::getline(), вы указали указатель на массив символов и размер этого массива. Вы должны создать массив где-нибудь самостоятельно. Если какая-то линия длиннее sz - 1
, будет прочтена только ее часть длиной sz - 1
.
Если вы не знаете максимальную длину строки в файле ввода, то лучше использовать std::getline(), например так:
std::string line;
std::getline(file, line);
Непосредственно из here:
Первая переменная:
Указатель на массив символов, где извлекается символы сохраняются как c-строка.
Вторая переменная:
Максимальное количество символов для записи с (включая завершающий нулевой символ). Если функция перестает считаться, потому что этот предел достигается без нахождения символа разграничения, устанавливается внутренний флаг сбоя. streamsize - это подписанный интегральный тип.