Конспект по языку C

Целевая аудитория — владеющие основами алгоритмизации и какого-либо языка программирования, те, кого не пугают слова «переменная» и даже «рекурсия». В курс (пока что) не входят многие серьёзные темы, например, volatile или глубины стандарта. Также я не буду рассматривать конкретные средства разработки, процесс создания проекта и компиляции. Лучше сосредоточимся на средствах языка и стандартной библиотеки. Если вы можете самостоятельно справиться с этим, то справитесь и с материалом. Сперва нужно быть знакомым с основами компьютерных архитектур, уметь переводить числа между разными системами счисления, складывать, вычитать в них и так далее, владеть основами логики, комбинаторики. Не лишним будет умение читать технические тексты по-английски и писать комментарии.

C — язык промышленного программирования, а не учебный, поэтому многие детали могут изначально пугать. Например, диапазоны переменных одного типа при компиляции на разных компьютерах могут различаться, малейшие опечатки — оборачиваться странным поведением программы или непонятными сообщениями об ошибках. Об истории языка и различиях в версиях и стандартах читайте самостоятельно.

Это, скорее, конспект без лишнего шума. Люди не машины, нам нельзя скормить алфавит, ключевые слова, завалить терминами «сигнатура» и «семантика», дать грамматику языка и что-то ждать в ответ. Я буду показывать примеры — от простого к сложному — которые вам нужно компилировать, изучать, как-то изменять. Самостоятельность — ключ к глубокому пониманию.

Оглавление

§ 1. Введение

§ 2. Переменные и типы

§ 3. Ввод и вывод

§ 4. Арифметика

§ 5. Управляющие конструкции

§ 6. Функции

§ 7. Массивы и указатели

§ 8. Строки

§ 9. Структуры, битовые поля и объединения

§ 10. Работа с файлами

§ 11. Классы памяти

§ 12. Побитовые операторы

§ 13. Препроцессор

§ 14. Компиляция и выполнение программы

§ 15. Литература

§ 16. Задачи

7 мая 2018
© MMXIMMXX
Светлая тема / тёмная тема