Программирование

C

Что такое C?

C написал Dennis Ritchie в Bell Labs. В языке мало команд: переменная, функция, условие, цикл и адрес памяти. C++ добавляет сверху классы и другие правила. C# — другой язык. Имя похоже, но это не C. Программа на C компилируется в машинный код до запуска.

Для чего нужен C?

C выбирают, когда нужны скорость и маленький размер. Ядро операционной системы, драйвер и микроконтроллер — его место.

  • Части ядра Linux
  • Программа микроконтроллера
  • Компилятор другого языка
  • Нижний слой сетевого инструмента

Что можно делать с C?

На C читают файл, считают байты и занимают место в памяти. Язык не проверяет за тебя. Шаг за конец массива может тихо сломать программу. Писать оконный сайт — не его обычная работа.

Сложно ли освоить C?

Слов мало, но адрес труден. Указатель — номер места в памяти. Неверный номер может задеть память другой программы. Если не вернуть занятое место, программа медленно заполняется.

Плюсы и ограничения

Плюс: результат может быть маленьким и быстрым, сам язык мало меняется. Ограничение: готового удобства для текста, списка и ошибки мало. Их пишешь сам. Ошибка безопасности здесь дорогая.

Основные понятия

Тип переменной говорит её размер. Функция связывает работу с именем. Указатель хранит адрес, не само значение.

  • int хранит целое число
  • char хранит один байт
  • if проверяет условие
  • return выводит значение из функции

Короткий пример

Эта программа пишет одну строку на экран и заканчивается 0. 0 обычно значит «ошибки не было».

#include <stdio.h>
int main(void) {
    printf("Hello\n");
    return 0;
}

Частые вопросы

  • C и C++ — одно и то же? Нет. C++ построен на C, но это отдельный язык.
  • C устарел? Нет. Его используют в ядре, драйвере и маленьком устройстве.
  • C безопасен? Язык тебя не останавливает. Неверный адрес может сломать программу.