Мой опыт использования функции «read_last(lines, file)» на языке C
Во время работы над одним из проектов мне пришлось создать функцию, которая будет открывать файл и выводить последние строки на печать. Вот как я это сделал на языке C ⁚
cpp
#include
#include
#include
#include
void read_last(int lines, const std⁚⁚stringn file) {
// Проверяем, что задано положительное целое число
if (lines < 0) {
std⁚⁚cout << ″Количество строк должно быть положительным целым числом.″ << std⁚⁚endl;
return;
}
// Открываем файл
std⁚⁚ifstream input(file);
// Проверяем, удалось ли открыть файл
if (input.fail) {
std⁚⁚cout << ″Не удалось открыть файл.″ << std⁚⁚endl;
return;
}
// Используем вектор для хранения последних строк
std⁚⁚vector
// Считываем все строки из файла в вектор
std⁚⁚string line;
while (std⁚⁚getline(input, line)) {
lines_buffer.push_back(line);
}
// Проверяем, что количество строк в файле больше или равно заданному числу
if (lines_buffer.size > lines) {
for (int i lines_buffer.size ‒ lines; i < lines_buffer.size; i ) {
std⁚⁚cout << lines_buffer[i] << std⁚⁚endl;
}
}
else {
std⁚⁚cout << ″Файл содержит меньше строк, чем заданное количество.″ << std⁚⁚endl;
}
// Закрываем файл
input.close;
}
int main {
read_last(3, ″example.txt″);
return 0;
}
В этом коде разработана функция `read_last(lines, file)`, которая принимает два параметра⁚ количество строк `lines` и имя файла `file`. Функция открывает файл и проверяет, удалось ли его открыть. Затем она считывает все строки из файла в вектор `lines_buffer`. После этого функция проверяет, что количество строк в файле больше или равно заданному числу. Если это так, то функция выводит на печать последние строки из вектора `lines_buffer`. В противном случае функция выводит сообщение о том, что файл содержит меньше строк, чем заданное количество.
Я использовал эту функцию для вывода последних трех строк из файла `example.txt`. Вы можете изменить значение параметра `lines` и имя файла `file` в функции `main`, чтобы адаптировать код под свои нужды.
Таким образом, функция `read_last(lines, file)` на языке C позволяет открыть определенный файл и вывести на печать заданное количество последних строк из этого файла. Эта функция может быть полезна в различных проектах, где требуется работа с файлами и вывод последних строк.