Зависит от операционной системы.
Под Windows:
- MS Visual Studio
- NetBeans
- Eclipse
- Qt Creator
- Emacs (а как же без него!)
- JetBrains CLion (обновлено, спасибо ixSci);
Под Linux:
- всё то же, кроме MS Visual Studio
Под Mac OS X (обновлено, спасибо ixSci):
Под Linux часто вообще не используется никакая IDE-среда разработки,
а используется просто отдельный компилятор, gcc
или clang
и обычный текстовый редактор, типа Vim.
В этом случае написание и компиляция простейшей программы выглядит так:
vim hello-world.c
gcc -o hello-world hello-world.c
Но это только в самом простейшем случае. В реальности же вы очень быстро приходите к необходимости использования программ сборки, отладки, анализа кода и так далее.
Программы сборки занимают очень важное место в инструментарии разработчика. Без них редко себе можно представить написание сколь-нибудь сложной программы.
Классической программой сборки являеися make (и его различные клоны-реализации в различных системах, например, cmake), но сейчас набирают популярность и ряд других программ.
Итак, универсальные программы для сборки (есть и специфичные, использующиеся только в некоторых случаях):
- make + autotools;
- SCons — сравнительно медленная, но мощная программа сборки; написана на Python;
- Waf — другая программа сбоки на Python, но отличающаяся от SCons высокой скоростью;
- ninja — сверхбыстрая сборочная программа на Си++, как правило используется в сочетании с более высокоуровневыми программами, такими как CMake, gyp или даже SCons.
Пример простейшего Makefile'а и его использование:
CC = gcc
CFLAGS = -g
RM = rm -f
default: all
all: Hello
hello: Hello.c
$(CC) $(CFLAGS) -o hello hello.c
clean veryclean:
$(RM) hello
Использование:
$ make hello
cc hello.c -o hello