Веб-версияОткрыть в Telegram

ПостПишем вывод последних строк файла на C++!

17 сентября 2026
C
C/C++ Ready | Программирование
Пишем вывод последних строк файла на C++! Иногда нужно быстро посмотреть конец лога или временного файла. Сделаем маленькую функцию, которая хранит только последние N строк и не загружает весь файл в память. Для этого удобно использовать std::deque. Он позволяет добавлять строки в конец и удалять самые старые строки из начала. Сначала подключим нужные заголовки: #include <deque> #include <fstream> #include <iostream> #include <string> Теперь открываем файл и готовим контейнер: std::ifstream in(path); std::deque<std::string> tail; std::string line; При чтении добавляем новую строку в конец: while (std::getline(in, line)) { tail.push_back(line); } Если строк стало больше лимита, удаляем самую старую: if (tail.size() > limit) { tail.pop_front(); } В итоге печатаем то, что осталось в deque: for (const auto& row : tail) { std::cout << row << '\n'; } Такой подход работает потоково. Даже если лог большой, в памяти одновременно лежит только нужное количество последних строк. 📣 C++ Ready | #практика
15 · 2.7K ·

Рядом в ленте

CC/C++ Ready | ПрограммированиеШпаргалка по std::span в C++20! Например, std::span позволяет передать часть vector, array или обычного C-массива без копирования и без владения памятью. На карCC/C++ Ready | ПрограммированиеФотография
это сообщение
CC/C++ Ready | ПрограммированиеСобираем простой пул объектов на C++! Иногда объект дорого создавать заново каждый раз. Например, буфер, парсер, контекст или структура с заранее выделенной памCC/C++ Ready | ПрограммированиеПочему setprecision не всегда означает количество знаков после точки? В C++ для форматирования дробных чисел часто используют std::setprecision. На первый взгля
CC/C++ Ready | ПрограммированиеC/C++ Ready | Программирование@cpp_ready · канал · Технологии
15 601подписчиков2 259средний охват поста
Лента площадки Открыть в Telegram

Открытая публичная лента из поискового индекса ChatCrawler — «Google по публичному Telegram»; обновляется по мере обхода площадки. Время — UTC.

Только публичный контент, официальный API Telegram. О проекте · Вопросы · Чего мы не делаем · Убрать страницу из выдачи · Каталог · Поиск · Как мы считаем