View Categories

Введение

Оглавление

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

C/C++ может показаться очень сложным языком (так то оно и есть), но на самом деле главное понять основные принципы синтаксиса и устройства файлов проекта. Тогда многие тонкости автоматически покажутся очень логичными и даже не требующими запоминания

Уроки ориентированы больше на программирование микроконтроллеров, поэтому в них могут быть опущены моменты, характерные для разработки под ПК и мощные контроллеры (например опущено семейство C++ библиотек std, т.к. не во всех компиляторах они есть), и наоборот подробнее разобраны особенности под некоторые платформы и семейства микроконтроллеров. В других разделах уроков на сайте рассмотрены конкретные платформы и особенности работы с ними, но базой для всех них является C/C++ - поэтому он вынесен в отдельный раздел, который рекомендуется изучить в первую очередь.

Также в отдельный раздел "Справочник" вынесена документация на некоторые стандартные библиотеки языка C с описанием функций и примерами использования - в самих уроках они рассмотрены бегло, после изучения уроков обращайтесь к справочнику.

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

Уроки местами содержат большой объём дополнительной информации по теме, чтобы оставаться в рамках темы и не размазывать эту информацию по другим урокам. Если что-то кажется сложным и лишним - пропустите главу, к ней всегда можно вернуться позже.

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

Запуск примеров #

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

В рамках уроков мы не будем рассматривать конкретные среды разработки, я предлагаю использовать онлайн компилятор-запускатор C++ кода onecompiler. Вот базовый шаблон программы для запуска, он же является минимальной программой, которая выводит Hello, World! в консоль. Запуск программы - красная кнопка Run:

#include <iostream>
#include <stdint.h>
#define LOG(x) std::cout << (x) << std::endl

int main() {
    LOG("Hello, World!");
}

file

Здесь LOG - универсальный макрос, который выводит данные любого типа в консоль.

0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии
Прокрутить вверх