О программе
Курс позволяет ознакомиться с языком программирования Си и освоить его базовые понятия и структуры. Полученных на курсе знаний достаточно, чтобы самостоятельно писать на Си консольные программы для ПК или программы для микроконтроллеров, более уверенно читать исходные коды программ на Си, написанные другими программистами.Используется компилятор GCC, как один из наиболее распространенных компиляторов для программ под Windows, Linux и MacOS.
Дополнительная информация
Тематический план курса:1. Введение в СиУстановка и использование компилятора и IDE (Windows, Linux, MacOS). Первая программа на Си. Структура программы на Си. Настройка параметров компиляции. Использование онлайн-компилятора.2. Переменные, типы данных, константыПеременные, типы данных, константы. Правильные имена переменных и констант. Консольный вывод printf.3. Операторы Си. Арифметика, преобразование типов, приоритеты в вычисленияхАрифметические операции, условные и логические операции, поразрядные операции. Использование масок и битовые поля. Приоритет и очерёдность вычислений.4. Функции в СиФункции и возвращаемые значения. Внешние переменные. Область видимости переменных. Статические переменные. Регистровые переменные. Блочная структура. Инициализация переменных. Преобразование типов. Правильные имена констант.5. Управление потоком программы: ветвление, циклыУправление потоком программы: if-else, switch. Циклы: for, while, do-while. Инструкции break, continue. Метки и инструкция goto. Консольный ввод scanf.6. УказателиЧто это такое и зачем? Операции с указателями, арифметика указателей, указатели и константы, массивы, строки. массивы указателей и их отличие от многомерных массивов. Аргументы командной строки. Указатели на функции. Сложные объявления. Указатели развязывают руки программисту. Квалификаторы const и volatile.7. Массивы, СтрокиМассивы и строки. Многомерные массивы. Работа со строками.8. СтруктурыОсновные сведения. Массивы структур. Указатели на структуры. Структуры со ссылками на себя. Использование typedef. Объединения. Структуры и битовые поля. копирование структур, сравнение структур. Массивы структур.9. Enum, Union. Препроцессор Си. Условная компиляцияСоставные тип данных: enum и union. Препроцессор языка Си. Макросы (#define). Условная компиляция - раннее связывание.10. Стандартная библиотека Си. Работа со строками. Работа с памятьюСтандартная библиотека Си. Стандартный ввод-вывод. Форматный вывод printf, Форматный ввод scanf. Работа с памятью. Выделение и освобождение памяти. Выделение памяти для произвольного массива данных. Управление памятью. Указатель на результат функции.11. Работа с файлами. Универсальный кодДоступ к файлам. Запись и чтение из файла. Позиционирование в файле. Универсальный код: прослойка между периферией МК и бизнес-логикой программы.