Карта сайта
- Язык Си
- Стандарт
- Введение
- История Языка
- Пишем первую программу (Windows)
- Пишем первую программу (Linux)
- Переменные
- Оператор присваивания
- Форматированный ввод и вывод
- Ветвления
- Оператор Switch
- Логические операторы
- Циклы
- Массивы
- Многомерные массивы
- Строки
- Указатели
- Константные указатели
- Массивы и указатели
- Макросы
- Целые числа фиксированного размера
- Тернарный оператор и оператор запятая
- Отладка программы (Windows)
- Структура программы на си
- Динамическое выделение памяти
- Параметры командной строки
- Функции
- Реализация вызова функции
- Указатели типа void
- Указатели на функции
- Об аргументах функции
- Битовые операции
- Функции для работы со строками
- Генерация псевдослучайных чисел в стандартном си
- Строковые литералы и строки
- Структуры
- Перечисляемый тип
- Классы памяти
- Дополнительные примеры работы с памятью и указателями
- Массивы произвольной длины и выделение памяти на стеке
- Быстрое выделение памяти под многомерные массивы
- Объединения и битовые поля
- Функции с переменным числом параметров
- Переполнение целых чисел
- Работа с текстовыми файлами
- Работа с бинарными файлами
- Сложные объявления языка си
- Сигналы
- Дополнение
- Реализация инкапсуляции с помощью непрозрачных указателей
- Реализация пространств имён в си
- Реализация перегрузки функций по типу с помощью макроса _Generic
- Встраиваемые функции
- Restrict указатели
- Применение ключевого слова Volatile
- Гид по линкерам для начинающих. Часть 1
- Гид по линкерам для начинающих. Часть 2
- PThreads
- Установка библиотеки pthread.h в Visual Studio Express
- Процессы и потоки
- Создание и объединение потоков
- Выбор числа потоков: задача с высокой вычислительной сложностью
- Выбор числа потоков: задача с высоким IOpS
- Барьеры
- Мьютексы: введение
- Семафоры: введение
- Спинлоки
- Условные переменные
- Блокировка чтения записи
- Дедлок: задача обедающих философов
- Лайвлок
- Libuv
- Структуры данных
- Стек
- Односвязный список
- Двусвязный список
- Двоичное дерево поиска
- Двоичное дерево поиска. Итеративная реализация
- Двоичное дерево поиска. Рекурсивная реализация
- Обход дерева. Сортировка
- Поворот двоичного дерева поиска
- Ассоциативный массив
- Другое
- Алгоритмы
- Вспомогательные алгоритмы
- Сортировки