Язык программирования С (Си) является основой сложных инженерных решений: на нём работает практически вся техника в мире. Микроконтроллеры и процессоры, электроника, умные устройства программируются на языке Си. Это язык техники, близкий по своему исполнению к ассемблеру и машинному коду, но более понятный человеку. Си открывает огромные возможности для программиста по взаимодействию с компьютером. Курс повышения квалификации «Программирование на Cи. Базовый уровень» предназначен для получения базовых навыков разработки на языке Cи. Слушатели познакомятся с инструментами разработчика и научатся создавать консольные приложения, а также узнают об особенностях использования языка Си для микроконтроллеров. Программа курса интересна: 1. Начинающим программистам для знакомства и получения базовых навыков разработки на языке Си, 2. Специалистам, желающим получить знания о применении языка Си для работы с микроконтроллерами, 3. Всем, кто интересуется программированием и хочет писать код на «железном языке». Чему вы научитесь: 1. Основам синтаксиса, семантики и паттернов программирования на языке Си 2. Основам работы с данными и структурами 3. Навыкам написания кода на языке Си 4. Навыкам работы с инструментами разработчика 5. Практическим навыкам разработки консольных приложений на Cи 6. Особенностям применения языка С для микроконтроллеров Спойлер: Содержание Модуль 1 - Введение в язык Си Лексемы и пробельные символы. Система типов языка Си. Диапазоны представляемых значений. Декларация переменных: int i, j, l; short int si; unsigned int ui; double balance, profit, loss. Литералы. Модуль 2 - Структура программы Использование библиотечных функций. Ввод с клавиатуры и вывод на экран. Написание простых программ. Компиляция, компоновка и выполнение программ. Модуль 3 - Операции Арифметические и логические операции. Операции присваивания. Отношения. Битовые, адресные и прочие операции. Приоритеты и ассоциативность операций. Модуль 4 - Операторы Оператор-выражение и составной оператор. Метки. Использование операторов break, continue, return. Управляющие операторы – goto, if-else, switch. Операторы цикла – while, do-while и for. Модуль 5 - Препроцессор Препроцессорные директивы #include, #define, #undef, #if — #else — #endif. Макроопределения с параметрами. Правила оформления деклараций в языке Си. Модуль 6 - Массивы Декларация массивов и их размещение в памяти. Индексация элементов массива. Массивы переменной длины (VLA). Инициализация массивов. Алгоритмы суммирования, поиска и сортировки. Модуль 7 - Функции Аргументы и параметры. Прототип функции. Возвращение значения функцией. Объявление функций в одном и отдельном файле. Рекурсия. Выражения, не зависящие от типа. Модуль 8 - Классы памяти Время жизни и область видимости объекта. Декларации на внутреннем и внешнем уровнях. Определяемые типы typedef. Модификаторы – auto, register, static, extern. Динамическое распределение памяти. Модуль 9 - Адресная арифметика Декларация указателей. Операции с указателями. Использование указателей как аргументов функции. Указатели на функции. Синтаксис объявления указателей на функцию. Указатели и массивы. Указатели и строки. Модуль 10 - Файлы Понятие потока – stream. Структура типа FILE. Открытие и закрытие файлов. Операции ввода-вывода. Последовательный и произвольный доступ. Указатель чтения-записи в файле. Модуль 11 - Структуры Декларация структур. Инициализация и доступ к элементам структуры. Вложенные структуры и массивы структур. Выравнивание данных _Alignas, _Alignof. Объединения. Модуль 12 - Итоговое занятие Составление сложного программного кода на языке Си. Проработка материала дополнительной литературы по теме. Модуль 13 - Итоговая аттестация Итоговая аттестация Длительность курса: 56 ак. часов