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

Автор: @energy_it

Реклама на бирже: https://telega.in/c/cpp_ready
加入频道
👩‍💻 Осваиваем корутины — пишем асинхронный код просто и понятно!

Корутины — это функции, выполнение которых можно приостанавливать и продолжать. Они позволяют писать асинхронный и ленивый код без громоздких колбэков и сложного состояния.

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

Три ключевых оператора: co_await, co_yield, co_return.

Можно создавать генераторы, которые возвращают значения по одному.

Асинхронные функции выглядят как обычные — без вложенности и запутанных цепочек вызовов.


Это мощный инструмент современного C++, который легко интегрируется с другими фичами языка.

📣 C++ Ready | #гайд
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥32👍86🤝1
👩‍💻 Серия роликов по продвинутым плюсам!

Вы прокачаете навыки разработки на C++: работа с памятью, ООП, шаблоны, STL, исключения, многопоточность и оптимизация

Ссылочка на плейлист: YouTube 🖤


📣 C++ Ready | #курс
Please open Telegram to view this post
VIEW IN TELEGRAM
15🔥8👍2👎1
Останавливаем потоки безопасно с std::jthread

Сейчас научимся правильно завершать потоки в C++. Без detach, без ручного join, без флагов.

Для начала подключим библиотеки. Чтобы код был короче, добавим using namespace std:
#include <iostream>
#include <thread>
#include <chrono>
using namespace std;


Теперь напишем рабочую функцию. Она будет печатать счётчик каждую секунду. Когда придёт сигнал остановки, поток завершится сам:
void worker(stop_token st) {
int tick = 0;
while (!st.stop_requested()) {
cout << "Tick " << tick++ << '\n';
this_thread::sleep_for(chrono::seconds(1));}
cout << "Поток завершён корректно.\n";
}


Запускаем поток через jthread. Ждём немного и просим его остановиться. Никаких join() вызывать не нужно — всё делается автоматически:
int main() {
jthread t(worker);
this_thread::sleep_for(chrono::seconds(3));
t.request_stop();
}


Вот что выведет программа:
Tick 0  
Tick 1
Tick 2
Поток завершён корректно.


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

📣 C++ Ready | #практика
Please open Telegram to view this post
VIEW IN TELEGRAM
11🔥10👍8😁1
This media is not supported in your browser
VIEW IN TELEGRAM
☕️ C‑Cpp — это обширный портал с практическими статьями и примерами по плюсам!

Здесь вы найдёте пошаговые руководства по функциональным возможностям C++, шаблонам, многопоточности, работе с указателями и многим другим.

📌 Оставляю ссылочку: c-cpp.ru

📣 C++ Ready | #ресурс
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥15👍76😁1
👩‍💻 CLI‑конвертер единиц (unit converter)

В этой задаче создаём консольную утилиту, которая переводит числовое значение из одной единицы измерения в другую прямо из терминала.

В этой задаче:

Принимаем на вход 3 аргумента — число, исходную единицу и целевую единицу.

Проверяем, что обе единицы входят в список поддерживаемых (m, cm, km, g, kg, l, ml).

Используем unordered_map с коэффициентами и сначала переводим значение в базовую единицу, затем — в нужную.


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

📣 C++ Ready | #задача
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥16👍76🤝1
👩‍💻 Серия роликов по современным технологиям!
(Tech Talks 2025)


Вы познакомитесь с актуальными темами из мира IT: от облачных решений и DevOps до машинного обучения, безопасности и масштабирования систем.

Ссылочка на плейлист: YouTube 🖤


📣 C++ Ready | #курс
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥97👍5
Убираем все пробелы из строки!

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

Сначала подключим необходимые библиотеки из стандартной поставки:
#include <string>
#include <algorithm> // std::erase_if (C++20)
#include <cctype> // std::isspace


Допустим, у нас есть строка с лишними пробелами и табуляцией:
std::string raw = "  Hello\tWorld \n ";


Теперь удалим все пробельные символы с помощью одного вызова:
std::erase_if(raw, [](unsigned char c) {
return std::isspace(c);
});
std::cout << raw << '\n';


Результат при запуске программы:
HelloWorld


🔥 Таким образом ты можешь быстро очищать строки от пробелов — без циклов, копий и лишнего кода.

📣 C++ Ready | #практика
Please open Telegram to view this post
VIEW IN TELEGRAM
20🔥10👍8
👩‍💻 Сегодня разберем 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
👍19🔥87🤝1