C/C++ Ready | Программирование
11.6K subscribers
696 photos
41 videos
334 links
Авторский канал по разработке на C и C++.
Ресурсы, гайды, задачи, шпаргалки.
Информация ежедневно пополняется!

Автор: @energy_it

Реклама на бирже: https://telega.in/c/cpp_ready
加入频道
👩‍💻 Сегодня разберем std::filesystem — удобный способ работы с путями к файлам и каталогам!

С его помощью можно легко получать расширение файла, имя без пути, родительский каталог, заменять расширение, а также работать с путём в системном формате. Полезно при создании утилит, обработке файлов и написании кроссплатформенного кода.

📣 C++ Ready | #шпора
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥26👍98🤝5
😎 Наткнулся на интересную статью — пошаговый разбор создания 2D-игры с использованием только C++ и STL.

В этой статье:
• Инициализация и отрисовка спрайтов в консоли без внешних библиотек
• Организация игрового цикла и логики с помощью контейнеров STL
• Обработка ввода, тайминга и коллизий в терминальной среде

🔊 Советую продолжить читать на Habr!


📣 C++ Ready | #статья
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11🔥76
👩‍💻 CLI‑генератор случайных паролей с гибкой спецификацией!

Консольная утилита, которая генерирует пароль заданной длины из выбранных групп символов прямо из терминала.

В этой задаче:
Принимаем на вход строку вида <длина><группы>, например 12abd.

Настраиваем генерацию случайных чисел для равномерного выбора символов из набора.

Постепенно формируем строку нужной длины, выбирая случайные символы из набора, и выводим результат.


Такой инструмент удобен, когда нужно быстро получить надёжный пароль с нужными характеристиками прямо из командной строки.

📣 C++ Ready | #задача
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍198🔥8🤝1
Разбираем создание временных файлов

Сейчас научимся создавать временный файл, который сам удалится после завершения программы. Это пригодится при работе с логами, кэшем, временными данными или тестами.

Сначала подключим необходимые библиотеки из стандартной поставки:
#include <cstdio>
#include <iostream>


Теперь создадим временный файл и проверим, удалось ли это:
std::FILE* tmp = std::tmpfile();

if (!tmp) {
std::cerr << "Не удалось создать временный файл.\n";
return 1;
}


Запишем в файл строку и переместим указатель в начало, чтобы прочитать:
std::fputs("Временные данные\n", tmp);
std::rewind(tmp);


Считаем содержимое из временного файла и выведем его на экран:
char buffer[64];
std::fgets(buffer, sizeof(buffer), tmp);
std::cout << "Прочитали: " << buffer;


Результат при запуске программы:
Прочитали: Временные данные


🔥 Таким образом ты можешь безопасно создавать временные файлы — без забот об удалении и кроссплатформенных различиях.

📣 C++ Ready | #практика
Please open Telegram to view this post
VIEW IN TELEGRAM
👍18🔥65👎1
Что же выведет консоль?
Anonymous Quiz
6%
A
42%
B
13%
C
39%
D
👍11🔥105
👩‍💻 Осваиваем семантику перемещения — забираем ресурсы без лишнего копирования!

Move-семантика в C++ позволяет не копировать данные, а забирать их у временных объектов. Это ускоряет работу программы и экономит память.

Что важно знать:

std::move() — позволяет «забрать» содержимое временного объекта.

Move-конструктор MyClass(MyClass&&) — переносит данные при создании нового объекта.

Оператор присваивания operator=(MyClass&&) — переносит ресурсы в уже существующий объект.


Это делает код быстрее и безопаснее — особенно при работе с динамической памятью и большими объектами.

📣 C++ Ready | #гайд
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍16🔥97🤝6
This media is not supported in your browser
VIEW IN TELEGRAM
☕️ Code․mu Tasker — бесплатный практический задачник по плюсам!

Здесь собрано 100 упражнений, распределённых по 10 уровням, которые помогут вам отработать базовые конструкции языка, принципы ООП, работу с библиотекой STL, алгоритмы и многое другое.

📌 Оставляю ссылочку: code.mu

📣 C++ Ready | #ресурс
Please open Telegram to view this post
VIEW IN TELEGRAM
14👍6🔥4