2010-11-09 6 views
12

Я хотел знать, что является нынешним стандартным компилятором C, используемым компаниями. Я знаю следующие компиляторы и не понимаю, какой из них использовать для обучения.Текущий стандартный компилятор C?

  1. Turbo C
  2. Borland C
  3. GCC
  4. DJGPP

Я сейчас обучения C и со ссылкой на R книги K &.

Может ли кто-нибудь указать мне, к комкому компилятору использовать?

+5

GCC весь путь ... самый быстрый, самый используемый и лучший поддерживаемый компилятор. –

+3

Помните, что gcc по умолчанию не является совместимым компилятором. Возможно, вы захотите ознакомиться с его руководством и проверить множество доступных вариантов. 'gcc -std = c99 -pedantic -Wall -Wextra' обеспечивает разумный вызов :-) – pmg

+3

как насчет [clang] (http://clang.llvm.org/)? –

ответ

15

GCC будет иметь лучшую поддержку выбранных вами вариантов по той простой причине, что он входит в стандартную GNU и является целью Linux. Очень маловероятно, чтобы какая-либо организация использовала другие три, за исключением, возможно, поддержки какого-нибудь ужасного устаревшего приложения.

Другие компиляторы C вы можете посмотреть в включают:

  • Clang: вверх и встречному, особенно для BSD и Mac OS X
  • Visual Studio Express: для программирования для Windows
  • Intel Compiler Suite: очень высокая представление; стоит денег
  • Portland Group: еще один высокопроизводительный коммерческий компилятор; используется обычно для суперкомпьютеров
  • PathScale: Еще другой коммерческий компилятор высокопроизводительных
+2

+1 Мне также нравится tcc (http://bellard.org/tcc/), «Tiny C Compiler»; особенно для обработки быстрых фрагментов в виде скриптов ('tcc -run snippet.c') – pmg

20

GCC будет стандартным, самым лучшим и самым быстрым компилятором с открытым исходным кодом, используемым большинством (здоровых) людей.

+0

okie получил это ... спасибо !! –

+10

Ничего себе, это немного.Компилятор Intel на 20-30% быстрее, чем GCC, насколько я помню, и насколько я знаю, ничего не изменилось недавно. – stonemetal

+2

Корпорации обычно стандартизуются на компиляторе, поставляемом с ОС. VS C++ для Windows, gcc для Linux, компилятор, поставляемый Oracle, IBM или HP для других unix. –

2

На мой взгляд, GCC - ваш лучший выбор, он часто обновляется и используется на многих платформах (OSX, Linux и т. Д.).

-2

gcc - лучший и бесплатный. GO FOR GNU!

+3

Помогите объяснить «лучший» для остального мира? Этот ответ не добавляет очень многого. – Flexo

+0

О, я имел в виду лучшее, как лучше всего в случае «свободы». – prap19

7

Если вы изучаете язык, Clang's much better diagnostics поможет вам.

Чтобы сделать раздел инструментов приложений (работа) лучше, GCC (и, возможно, Visual Studio) хорошо знать.

+0

Да, clang очень хорош в диагностике. Но я беру это из списка компиляторов, что автор работает на платформе Windows. Как легко настроить clang на Windows? – onemasse

+0

См. [Здесь] (http://llvm.org/releases/download.html) для двоичных файлов. –

2

GCC (который я использую в те редкие моменты, когда я пользуюсь C) или ICC (компилятор Intel C Compiler), хотя ICC известен тем, что делает код, который работает медленно на процессорах AMD.

3

зависит от платформы, которую вы используете, и планирования, чтобы узнать, или будет делать будущее развитие.

В Windows вы можете использовать Visual Studio Express C++, который поддерживает стандартное использование ANSI C. Второй вариант - Cygwin, который представляет собой библиотеку и набор инструментов, который воспроизводит большую часть того, что вы будете использовать в Linux или других ОС Unix-стиля (он использует GCC).

На Mac вам нужен XCode, который является стандартным инструментом разработки, включая C-компилятор (на основе GCC).

Во многих системах типа Unix это будет cc или gcc в зависимости от поставщика ОС.

Если у вас есть деньги, некоторые из платных компиляторов, таких как Intel, являются исключительными, но, вероятно, не помогут в освоении программных средств на этом этапе.

+0

Что относительно MinGW для Windows? – alternative

+3

Visual Studio Express C++, согласно Microsoft, не поддерживает C99. И, я считаю, нет никаких планов сделать это так. – pmg

+0

Visual Studio Express также не поддерживает x86-64. Раньше было обходным, но MS изменила внешний вид реестра, поэтому обход больше не применяется. Кроме того, Express устанавливает много мусора, поэтому, если вы решите отступить, вы смотрите на 25-30 удалений, прежде чем закончите. –

0

Я могу порекомендовать OpenWatcom, который когда-то использовался для разработки Netware. Поддерживает только IA-32, но делает это хорошо. Содержит базовую среду IDE и базовый, но компетентный профилировщик. Что-то для реального программиста :)

Тогда есть Pelles C, который поддерживает x86-64. У этого есть базовая VC-подобная IDE, но мало программ поддержки.

Мне нравятся эти два, потому что компиляторы компетентны, и вы быстро идете, не перегружая руководства и не задаваясь вопросом, что означают опции.

1

Если вы используете операционную систему LINUX, то GCC является лучшим компилятором. Вы можете отдельно отделять каждый шаг компилятора, такой как предварительная обработка, сборщик, компоновщик отдельно в компиляторе GCC, используя некоторые параметры командной строки. Вы можете легко анализировать шаг за шагом компиляции вашего исходного кода. Я предлагаю пойти для «GNU C COMPILER (GCC)». Вы можете использовать команду «CC», ее ничего, кроме символической ссылки на GCC.

0

Если вы на окнах использовать MinGW или как большинство предложили ОЦП с GCC на Linux

Хотя конечно, так как это командная строка, так что вы могли бы найти Dev-C++ и/или Code :: Blocks, Eclipse CDT и т.д., которые являются IDE полезны для упрощения вашей работы.

Нет стандартного и каждого компилятора, и его библиотеки отличаются друг от друга.

Смежные вопросы