Чему вы научитесь
- Применять основы синтаксиса C: типы данных, переменные, константы.
- Работать с выражениями и операторами: арифметическими, логическими, побитовыми.
- Управлять потоком выполнения: if…else, switch, циклы for, while, do…while.
- Создавать и использовать структуры, перечисления и typedef для удобства.
- Работать с массивами: одномерными, многомерными, передача в функции.
- Осваивать указатели: адреса, разыменование, арифметика, работа со структурами.
- Обрабатывать строки: безопасное чтение, запись, стандартные функции (strlen, strcpy).
- Управлять памятью: malloc, calloc, realloc, free, отладка утечек через Valgrind.
- Работать с файлами: текстовые и бинарные режимы, чтение/запись, потоки stdin, stdout, stderr.
- Собирать многофайловые проекты: .c / .h, Makefile, препроцессор (#define, #include, условная компиляция).
- Понимать область видимости, время жизни переменных и классы хранения (static, extern).
- Писать безопасный код: защита от buffer overflow, использование современных стандартов (C99/C11).
О курсе
Освойте язык C с нуля — от переменных и циклов до указателей, файлов и динамической памяти. Практические уроки, чек-листы и задания помогут вам не просто выучить синтаксис, а понять логику языка, писать надёжный код и подготовиться к системному программированию. Идеально для новичков и тех, кто хочет глубоко понять, как работает программа под капотом.
Для кого этот курс
Этот курс идеально подходит для 1) новичков в программировании, которые хотят начать с языка, дающего глубокое понимание компьютера, 2) студентов технических специальностей (информатика, прикладная математика, инженерия), которым нужен C для учебы или экзаменов, разработчиков других языков (Python, Java), 3) желающих понять, как устроена память и как работают низкоуровневые системы, 4) людей, планирующих заниматься системным программированием, встраиваемыми системами, драйверами, ОС.
Начальные требования
Перед началом курса учащиеся должны:
- Уметь работать с текстовым редактором (VS Code, Vim, Nano и т.д.).
- Иметь базовое представление о том, что такое программа, переменная, оператор.
- Уметь открывать терминал и выполнять простые команды (cd, ls, gcc).
- Иметь доступ к компьютеру с установленным компилятором GCC или Clang (Linux, macOS, WSL).
Не требуется знание других языков — курс начинается с нуля.
Но если вы уже знаете Python или Java — это поможет быстрее освоить синтаксис.
Преподаватели курса
Как проходит обучение
Обучение проходит в формате: теория-практика-самостоятельные.
Курс можно проходить в любом темпе — нет жестких сроков.
Сертификат
Успешно завершив курс, вы получите сертификат от платформы Stepik. Уже 8 учеников получили сертификат.
Что вы получите
- По окончании курса вы получите востребованные навыки и знания: работа с памятью, указателями, файлами, сборка проектов.
Нагрузка
4-6 часов в неделю