Синтаксис си/с++ 16

Синтаксис си/с++

Стек и куча: где живут переменные, разница в скорости и времени жизни

Введение Ранее мы упоминали «автоматическое» время жизни локальных переменных и динамическую память — в этой статье соберём эти концепции в единую картину, явно разобрав два основных региона памяти,…

Синтаксис си/с++

Динамическая память: malloc/free, new/delete, отличия и подводные камни

Введение До этой статьи все примеры использовали переменные с автоматическим временем жизни, размер и количество которых известны на этапе компиляции — динамическая память позволяет выделять память во время…

Синтаксис си/с++

Перечисления: enum в C и enum class в C++

Введение Перечисления дают именованные, осмысленные альтернативы «магическим числам» — в этой статье разберём enum в его классическом, С-совместимом виде, и более современный, безопасный enum class C++11, устраняющий ряд…

Синтаксис си/с++

Объединения (union) и битовые поля

Введение Ранее мы разобрали struct, где все поля существуют одновременно, занимая суммарный объём памяти — union представляет принципиально иной подход, где все поля совместно используют ОДНУ И ТУ…

Синтаксис си/с++

Структуры (struct): объявление, вложенность, выравнивание полей

Введение После базового синтаксиса (блок 1) переходим к организации данных — struct объединяет несколько связанных значений разных типов в единую сущность, и в этой статье разберём объявление структур,…

Синтаксис си/с++

Указатели: основы, арифметика указателей, указатели на указатели

Введение Уже неоднократно использовали указатели — настало время разобрать их системно, как одну из самых фундаментальных и одновременно потенциально опасных концепций C/C++: что представляет собой указатель, как работает…

Синтаксис си/с++

Массивы: одномерные, многомерные, связь с указателями

Введение Ранее рассматривали передачу одиночных значений в функции — массивы добавляют новое измерение, представляя последовательность однотипных элементов, тесно связанную с указателями на низком уровне реализации в C/C++. Концепция…

Синтаксис си/с++

Функции: объявление, определение, передача параметров по значению/ссылке/указателю

Введение Мы уже рассматривали разделение объявления и определения функции на примере square() — в этой статье разберём функции подробнее, фокусируясь на ключевом практическом вопросе: три способа передачи параметров…