Жизненный цикл программы

1. Определение целей программы

2. Проектирование программы

Подбор инструментов (IDE, компилятор)

3. Написание кода


Описание языка C (eng)
Описание языка C (рус)
Программирование в Linux с нуля (рус)
Руководство начинающего разработчика Debian

Где искать описания библиотечных функций?

Размещение стандартных заголовочный файлов:
/usr/include

устройство памяти
спецификаторы класса памяти

файл

сетевое программирование

синтаксис форматирования
определения
приоритеты
переменная
указатели

4. Компиляция

Процесс компиляции
LLVM
Создание собственного компилятора

5. Запуск программы на выполнение

6. Тестирование и отладка программы

7. Сопровождение и модификация программы