cpportal | Неотсортированное

Telegram-канал cpportal - С/С++ Portal | Программирование

8757

Присоединяйтесь к нашему каналу и погрузитесь в мир для C/C++-разработчика Связь: @devmangx

Подписаться на канал

С/С++ Portal | Программирование

«Учебник по Malloc»

Пошаговое руководство по созданию собственного выделителя памяти, чтобы по-настоящему понять, как работает управление памятью в C.

Охватывает управление кучей, разбиение блоков и выравнивание памяти.

Необходимо для понимания того, как работают malloc, free и realloc на низком уровне. 😐

Ознакомиться:
https://wiki-prog.infoprepa.epita.fr/images/0/04/Malloc_tutorial.pdf

👉 @Cpportal | #ресурсы

Читать полностью…

С/С++ Portal | Программирование

Линус Торвальд о C++ 😂

В письме выше он отвечает на вопрос о том, почему исходный код Git написан на C, а не на C++.

Его слова: 👇

"C++ — это ужасный язык. Он стал еще хуже из-за того, что его используют множество посредственных программистов, из-за чего намного проще генерировать полный и абсолютный хлам."

"Единственный разумный выбор — это C. Если программист предпочитает C++ для такого проекта, как Git, то я, честно говоря, предпочел бы его оттолкнуть, чтобы он не пришел и не испортил проект."

"Если вам нужен VCS на C++, идите и используйте Monotone. Они используют „настоящую базу данных“, „приятные объектно-ориентированные библиотеки“ и „милые C++-абстракции“. И, честно говоря, из-за всего этого их код — это ужасная и непригодная для поддержки каша." 🧔‍♂️


👉 @Cpportal

Читать полностью…

С/С++ Portal | Программирование

А еще есть javascript, но не будем об этом.

👉 @Cpportal | #memes

Читать полностью…

С/С++ Portal | Программирование

Всё полезное здесь 🔥

Создайте своё собственное ... на C:

🟢База данных
🟢Docker (контейнер)
🟢Виртуальная машина
🟢Сетевой стек
🟢Операционная система
🟢Компилятор
🟢Игровой движок
🟢Физический движок
🟢Движок регулярных выражений
🟢Оболочка

Ознакомиться:
https://github.com/codecrafters-io/build-your-own-x

👉 @Cpportal | #ресурсы

Читать полностью…

С/С++ Portal | Программирование

Кто хочет стать низкоуровневым программистом?😃

Лови ссылку, которая предоставляет руководство по обучению программированию на уровне аппаратного обеспечения, системному программированию и разработке для ядра Linux, с примерами на языках C, Assembly и Rust.

Ознакомиться:
https://github.com/gurugio/lowlevelprogramming-university

👉 @Cpportal | #ресурсы

Читать полностью…

С/С++ Portal | Программирование

Факториал произвольных больших чисел на языке C

Этот код дает возможность вычислять факториалы очень больших чисел, выходящих за пределы стандартных типов данных в C.

👉 @Cpportal | #ресурсы

Читать полностью…

С/С++ Portal | Программирование

Курс ECE 4760/5730 в Корнельском университете посвящен встроенным системам реального времени с использованием микроконтроллеров.

📝В рамках курса ты будешь работать с RP2040, создавая различные проекты — от синтезаторов птичьего пения до одномерного контроллера вертолета. Обучение практическое, так что если тебе интересны аппаратное программирование и язык C, этот курс идеально подойдет.

https://youtube.com/playlist?list=PLDqMkB5cbBA5oDg8VXM110GKc-CmvUqEZ

https://ocw.ece.cornell.edu/courses/ece-4760-designing-with-microcontrollers/

https://ece4760.github.io

👉 @Cpportal | дать буст #видео

Читать полностью…

С/С++ Portal | Программирование

C в Linux и C в windows 😒

👉 @Cpportal | #memes

Читать полностью…

С/С++ Portal | Программирование

Быстрое освоение кодовой базы

Если ты новичок в проекте, то расширение CodeViz для VS Code помогает визуализировать структуру кода в виде интерактивных диаграмм. 🔥

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

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

Ознакомиться:
https://marketplace.visualstudio.com/items?itemName=CodeViz.codeviz

👉 @Cpportal | #ресурсы

Читать полностью…

С/С++ Portal | Программирование

Изучите все низкоуровневые детали работы графических процессоров 🔥

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

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

Ознакомиться:
https://github.com/adam-maj/tiny-gpu

👉 @Cpportal | #ресурсы

Читать полностью…

С/С++ Portal | Программирование

👉 @Cpportal | #memes

Читать полностью…

С/С++ Portal | Программирование

Структуры данных и алгоритмы в C++

📝В книге улучшена согласованность с C++ STL, добавлены главы о массивах, списках, итераторах, управлении памятью и B-деревьях, расширены примеры анализа алгоритмов и рассмотрены техники динамического программирования и жадных алгоритмов. Также переработаны кодовые примеры, добавлены STL-итераторы для контейнерных классов и обновлен интерфейс приоритетной очереди.

Книга содержит множество упражнений и ориентирована на студентов, изучающих программирование и алгоритмы.

Получите свой экземпляр:
https://eduarmandov.wordpress.com/wp-content/uploads/2017/05/c_c-data-structures-and-algorithms-in-c.pdf

👉 @Cpportal | #книги #en

Читать полностью…

С/С++ Portal | Программирование

Первый бесплатный интерактивный учебник по линейной алгебре:

🟢Векторы и матрицы
🟢Скалярное и векторное произведение
🟢Определители
🟢Ранги матриц
🟢Собственные значения и собственные векторы

Линейная алгебра полезна в C++, особенно если ты работаешь с графикой, физикой, машинным обучением или численными вычислениями 🤷‍♂️

Ссылка: тык

👉 @Cpportal | дать буст

Читать полностью…

С/С++ Portal | Программирование

Нашел интересную маленькую презентацию о самых эзотерических частях C.

🟢Темный угол С
🟢Shadowy escape
🟢странное повторное использование ключевых слов
и тд.

Довольно интересно и смешно!

Читать 🔜 https://docs.google.com/presentation/d/1h49gY3TSiayLMXYmRMaAEMl05FaJ-Z6jDOWOz3EsqqQ/edit#slide=id.gec7eb408_3500

👉 @Cpportal | дать буст

Читать полностью…

С/С++ Portal | Программирование

Perforator узнает, где тормозит ваш код 🤤

На GitHub выложили код системы непрерывного профилирования, которую Яндекс использует для анализа производительности большинства своих сервисов.

Perforator поддерживает нативные (C++, C, Go, Rust) и экспериментально Python и Java. Ещё его можно развёртывать на Kubernetes и локально. Он обеспечивает высокую точность профилей с минимальным оверхедом, рисует быстрые флеймграфы и умеет оптимизировать программы на основе прошлых версий.

Уже сейчас Perforator можно скачать и протестировать самому. Исходный код доступен под лицензией MIT (и GPL-для eBPF-программ) и запускается под x86-64 Linux.

Статья: тык
Визуализация: тык

👉 @Cpportal | #cтатья

Читать полностью…

С/С++ Portal | Программирование

Гид от Mohit Mishra про различные аспекты управления памятью в языках C и C++ 🫵

🟢Почему важно освобождать память вручную.
🟢Как операционная система очищает память после завершения программы.
🟢Какие проблемы могут возникнуть из-за утечек памяти.
🟢Почему в C и C++ нет автоматического сборщика мусора.
🟢Как правильно работать с памятью: вручную, с умными указателями, аллокаторами.

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

Ознакомиться: клик

👉 @Cpportal | #cтатья

Читать полностью…

С/С++ Portal | Программирование

Один из лучших ресурсов по языку Си, который я видел. "Essential C" Ника Парланте.

Ее так недооценивают. Попробуйте.👍

Она бесплатная и занимает ~45 страниц.

🟢объяснение базовых концепций, таких как переменные, типы данных, операторы и управляющие структуры.
🟢как создавать и использовать функции в C.
🟢Указатели и массивы: одна из ключевых тем в C, которая часто вызывает сложности у начинающих.
🟢объяснение динамического выделения памяти и управления ею.
🟢как работать с пользовательскими типами данных.
🟢основы работы с файлами в C.

Ознакомиться:
http://cslibrary.stanford.edu/101/EssentialC.pdf

👉 @Cpportal | #ресурсы

Читать полностью…

С/С++ Portal | Программирование

Как работает кэш внутри процессора?

Источник: клик

*️⃣переведено при помощи нейросети

👉 @Cpportal | #ресурсы

Читать полностью…

С/С++ Portal | Программирование

Руководство "Tiny Interpreters for Microcontrollers" от Криса Велти

Рассматриваются способы создания и использования небольших интерпретаторов для микроконтроллеров. 🧔‍♂️

🟢Почему интерпретаторы полезны на микроконтроллерах
🟢Какие существуют компактные интерпретируемые языки
🟢Примеры крошечных интерпретаторов (например, Forth, Lisp, BASIC)
🟢Оптимизация использования памяти и вычислений

Если тебе интересно программирование микроконтроллеров или разработка встраиваемых систем, статья может быть полезной

Ознакомиться:
https://dercuano.github.io/notes/tiny-interpreters-for-microcontrollers.html

👉 @Cpportal | #cтатья

Читать полностью…

С/С++ Portal | Программирование

Эта ассамблея 😄

👉 @Cpportal | #memes

Читать полностью…

С/С++ Portal | Программирование

Создание реальных локаций в Minecraft с помощью данных OpenStreetMap

Arnis позволяет генерировать любые реальные локации в Minecraft Java Edition с высокой детализацией, используя геопространственные данные из OpenStreetMap.

Он позволяет создавать точные и масштабные миры Minecraft, отражающие географию и архитектуру реальных мест, таких как города и природные объекты

Ознакомиться:
https://github.com/louis-e/arnis

👉 @Cpportal | #ресурсы

Читать полностью…

С/С++ Portal | Программирование

Бывший ученый-физик CERN и математик Тсочке, создавший квантовую тензорную библиотеку с значительно превосходящей производительностью по сравнению с популярной AI-библиотекой TensorFlow (от Google), только что выложил на GitHub репозиторий с прекрасным C-кодом. 😮

📝Это высокопроизводительный гибридный классический-квантовый вычислительный фреймворк, написанный на языке C.

Также представлена документация, включая файл QUANTUM_ML.md, который описывает математическую основу и текущий статус разработки.

Ознакомиться:
https://github.com/tsotchke/quantum_geometric_tensor

👉 @Cpportal | #ресурсы

Читать полностью…

С/С++ Portal | Программирование

Пошаговое руководство по созданию HTML-шаблона на языке C

📝Научитесь создавать простой HTML-шаблонизатор на C с нуля! В этом проекте рассматриваются настройка TCP-сервера, генерация динамического контента и обработка шаблонов с заполнителями, условиями и циклами. Подходит для начинающих и разработчиков, интересующихся низкоуровневыми механиками веб-серверов.

Ссылка:
trish07/step-by-step-guide-to-creating-an-html-template-engine-in-c-91a8aa0fcdce" rel="nofollow">https://medium.com/@trish07/step-by-step-guide-to-creating-an-html-template-engine-in-c-91a8aa0fcdce

👉 @Cpportal | #ресурсы

Читать полностью…

С/С++ Portal | Программирование

Подборка курсов по C 😮

❯ Программирование на языке Си
https://youtube.com/playlist?list=PL9IEJIKnBJjG5H0ylFAzpzs9gSmW_eICB

❯ Отладка программ на языке C
https://youtube.com/playlist?list=PL9IEJIKnBJjHGWPN_S9NS_Ky1-tC8ZrUI

❯ Сетевое программирование
https://youtube.com/playlist?list=PL9IEJIKnBJjH_zM5LnovnoaKlXML5qh17

❯ Встраиваемые системы
https://youtube.com/playlist?list=PL9IEJIKnBJjEcPAz6fss-Hx0TLytCOMVC

❯ Проблема с памятью в C
https://youtube.com/playlist?list=PL9IEJIKnBJjGAINguks7wyq7TAnHOZGRl

❯ Программирование потоков в C
https://youtube.com/playlist?list=PL9IEJIKnBJjFZxuqyJ9JqVYmuFZHr7CFM

❯ DSA с использованием C
https://youtube.com/playlist?list=PL9IEJIKnBJjFiudyP6wSXmykrn67Ykqib

👉 @Cpportal | дать буст #видео

Читать полностью…

С/С++ Portal | Программирование

Brokenthorn OS Development Series — это практический цикл статей, предназначенный для начинающих разработчиков операционных систем.

Отличный ресурс для тех, кто хочет заняться разработкой ОС.

📝Ознакомиться:
http://www.brokenthorn.com/Resources/OSDevIndex.html

👉 @Cpportal | #ресурсы

Читать полностью…

С/С++ Portal | Программирование

Quandoom — это порт DOOM для квантовых компьютеров, использующий 70 000 кубитов и 80 миллионов логических вентилей.

Работает со скоростью 10–20 FPS на классическом оборудовании с использованием легковесного C++ QASM-симулятора.

Обратите внимание, что запуск симулятора требует около 5–6 ГБ оперативной памяти и может занять некоторое время при загрузке из-за большого размера схемы.

Ознакомиться
https://github.com/Lumorti/Quandoom/

👉 @Cpportal | #ресурсы

Читать полностью…

С/С++ Portal | Программирование

4 репозитория GitHub для подготовки к 4 различным типам собеседований по программной инженерии:💀

1. Собеседования по проектированию систем: https://github.com/ashishps1/awesome-system-design-resources

2. Собеседования по низкоуровневому проектированию: https://github.com/ashishps1/awesome-low-level-design

3. Интервью по кодированию: https://github.com/ashishps1/awesome-leetcode-resources

4. Behavioral Interviews https://github.com/ashishps1/awesome-behavioral-interviews

👉 @Cpportal | #ресурсы

Читать полностью…

С/С++ Portal | Программирование

Essential C++

Это бесплатная книга о языке программирования C++.

Она является частью серии Essential Programming Books.

Книга написана, чтобы предоставить четкое и лаконичное объяснение тем как для начинающих, так и для опытных программистов.

Большинство примеров связаны с онлайн-песочницей, где можно изменять код и запускать его заново.

Содержание основано на теперь уже заброшенном проекте StackOverflow Documentation, но было значительно переработано и улучшено.

📖 Читать: ссылка

👉 @Cpportal | #книги #en

Читать полностью…

С/С++ Portal | Программирование

Архитектура компьютера: Усовершенствованная конструкция процессора

Эти видео объясняют развитие технологий от скалярных RISC-конвейеров до современных динамических сверхскалярных процессоров, включая концепции зависимостей данных, VLIW, статических и динамических сверхскалярных процессоров с регистрацией состояния и алгоритмом Томасуло. ❤️

📱 Источник: ТЫК

👉 @Cpportal | дать буст

Читать полностью…

С/С++ Portal | Программирование

Готовишься к собеседованию на позицию разработчика? Этот список для тебя! В нем собраны самые часто задаваемые вопросы по каждой теме. ❤️

Массивы

🟢Как отсортировать массив с помощью быстрой сортировки (quicksort)?
🟢Как развернуть массив?
🟢Как удалить дубликаты из массива?
🟢Как найти второе по величине число в неотсортированном массиве целых чисел?

Связанные списки

🟢Как найти длину связанного списка?
🟢Как развернуть связанный список?
🟢Как найти третий узел с конца списка?
🟢Как удалить дубликаты в неотсортированном связанном списке?

Строки

🟢Как проверить, содержит ли строка только цифры?
🟢Как перевернуть строку?
🟢Как найти первый неповторяющийся символ в строке?
🟢Как найти повторяющиеся символы в строке?

Бинарные деревья

🟢Как вывести все листья бинарного дерева?
🟢Как проверить, является ли дерево бинарным деревом поиска?
🟢Как реализовать бинарное дерево поиска?
🟢Как найти наименьшего общего предка (LCA) в бинарном дереве?

Графы

🟢Как обнаружить цикл в ориентированном графе?
🟢Как обнаружить цикл в неориентированном графе?
🟢Как найти общее количество сильно связных компонент?
🟢Как определить, существует ли путь между двумя вершинами графа?
🟢Как найти минимальное количество перестановок, необходимых для сортировки массива?

Динамическое программирование

🟢Как найти наибольшую общую подпоследовательность?
🟢Как найти наибольшую общую подстроку?
🟢Как решить задачу о размене монет?
🟢Как решить задачу о штабелировании ящиков?
🟢Как посчитать количество способов покрыть расстояние?

👉 @Cpportal | дать буст

Читать полностью…
Подписаться на канал