Varios compiladores de C recomendados
La serie GCC incluye
Cygwin
Mingw32
DJGPP
Dev-C (Mingw32)
También existe la versión auténtica GNU GCC 2.95.5~3.0.0. 4
La serie MS incluye
MSC 5.0, 6.0, 7.0
MSQC 1.0, 2.5
MSVC 1.0, 4.2, 6.0, 7.0
Las series de Borland incluyen
TC 1.0, 2.0
TC 1.01, 3.0
BC 3.0, 3.1, 4.0, 4.5, 5.0, 5.02
BCB 3.0, 5.0, 6.0
Otros tienen
Intel C/C 5.0
Watcom C/C 11.0, 11.0c
VectorC 1.3.3
IBM VisualAge para C
DigitalMars C/C
KAI C/C 4.03f para RedHat 7.2
Lcc4.1
LCC-WIN32 2001-09-25~2002-04-28 Versión japonesa
Pequeña C
CC386
Pacific C
También hay un intérprete de C
Quincy
Eic
CINT
He utilizado la mayoría de los compiladores/intérpretes mencionados anteriormente. Los cinco compiladores VC7.0 Cygwin Mingw32 VectorC y LCC-WIN32 ahora están arreglados.
GNU GCC es la fuente de todas las demás versiones de compiladores de la familia GCC. Entre ellos, Cygwin y Mingw32 son compiladores para la plataforma WIN32, mientras que DJGPP es un compilador de 32 bits para DOS. El conocido DEV-C es, en el mejor de los casos, un shell para GCC, y el compilador que viene con él es una versión de Mingw32. De estas versiones de GCC, Cygwin es la más grande y es más un conjunto de herramientas de programación que un compilador. No sólo tiene un compilador, sino también muchas otras herramientas. De hecho, es una implementación del sistema UNIX en la plataforma WIN32. Implementa las herramientas UNIX más comunes e incluso integra "herramientas" como Apache en versiones recientes. Sin embargo, aunque Cygwin es poderoso, no es muy conveniente de usar (similar a UNIX, las personas familiarizadas con UNIX pueden comenzar rápidamente) porque muchas otras herramientas distraen la atención de las personas. En comparación, Mingw32 es mucho más fácil de usar. Sólo tiene unas pocas herramientas de programación básicas (desafortunadamente, no viene con GDB). GCC no sólo tiene un compilador C/C, sino también muchos otros compiladores, como Java, Fortran, ADA, etc. Es una colección de compiladores, no sólo una colección de compiladores, es una colección de compiladores. No hace falta decir que los compiladores de la serie MS son familiares para todos y VC 7.0 (VC.NET) es el producto más reciente. No hace falta decir que la serie de compiladores de Borland es familiar para todos.
Otros compiladores, como Intel C/C, son totalmente compatibles con VC6, pero para utilizar VC6 debes ceñirte a él. Watcom C/C fue una de las primeras piezas de la guerra de compiladores que originalmente era algo muy bueno pero que ahora desapareció debido a una mala estrategia. Desafortunadamente, la estrategia no era la correcta y ahora ya no existe. VisualAge para C de IBM era originalmente el compilador de C que IBM quería usar, pero la estrategia de IBM cambió y fue abandonado. El predecesor de C/C fue Symantec C (también fue miembro de la guerra de compiladores de las cuatro naciones), pero ahora Symantec ya no lo hace, por lo que su autor lo cambió a DigitalMars C/C y lo abrió a todos. kai C/C es un compilador C/C muy potente, es un compilador multiplataforma. lcc4.1 es un compilador de C puro, de código abierto. LCC-WIN32 es un entorno de desarrollo integrado en lenguaje C desarrollado sobre la base de LCC. Es muy bueno, tiene información muy detallada y es gratuito. Pacific C es un entorno de desarrollo integrado en lenguaje DOS C puro, sin mencionar. Small C CC386 es un compilador de código abierto que es muy simple de usar y fácil de aprender. Quincy Eic CINT es un intérprete de lenguaje C para que las personas aprendan el lenguaje C. CINT es potente y admite algunas funciones de C.
Por supuesto, hay muchos otros compiladores, y los compiladores que proporciono aquí se pueden usar en plataformas WIN32 o DOS (excepto KAI). Los compiladores de la plataforma UNIX siguen siendo principalmente compiladores GNU y no sé mucho sobre los demás.
Entre los compiladores anteriores, el más especial es VectorC, que solo admite lenguaje C puro. Aunque afirma ser el compilador más rápido, después de mis pruebas, ¡es mucho más potente que otros compiladores en algunos casos! Cygwin y Mingw32 provienen de la misma fuente y no hay mucha diferencia en su funcionamiento. El código que generan es muy eficiente y se compila rápidamente. En particular, su compatibilidad con las funciones de C es la más completa de cualquier compilador y también admite la mayoría de las funciones de C99. ¡Esto es muy bueno! Todo el mundo ya está familiarizado con MS VC, así que no diré más. Pero en su último producto, VC7.0, se han producido grandes mejoras. Su soporte para características de C ha mejorado enormemente con respecto a 6.0 y ocupa el segundo lugar después de GCC entre los compiladores que he usado. ¡Y los programas que compila se ejecutan muy rápido! Sólo hay unos pocos casos en los que es más rápido que VectorC y GCC; de lo contrario, ¡es el más rápido! Su velocidad media es la más rápida. No hace falta decir mucho sobre los productos de Borland. Sus TC2.0 y BC3.1 son mis favoritos. ¡Pero BCB ya no es lo que solía ser y la velocidad de compilación es tan lenta como la de VC6! El entorno de desarrollo integrado tiene más errores. Lo más desconcertante es que el código que genera se ejecuta muy lentamente, ¡más lento que LCC-WIN32! Lo único que vale la pena mencionar es que su RAD es mejor que el de MS. Puede que no estés familiarizado con el compilador de Intel, ¡pero es muy caro! También tenía que admitir VC, que era muy antieconómico y se compilaba más lentamente que VC6. Pero la calidad de su código es muy buena. DigitalMars C/C no tiene aspectos destacados, la velocidad de compilación es rápida, la velocidad de ejecución del código es moderada y la compatibilidad con la función C no es mala. LCC-WIN32 es un entorno de desarrollo integrado muy bueno. Solo admite lenguaje C puro, tiene una velocidad de compilación rápida y una velocidad de ejecución de código lenta. La ejecución del código es lenta. Pero lo más destacado es su entorno de desarrollo integrado. Entre todas las herramientas de programación gratuitas, su entorno de desarrollo integrado es el más profesional y tiene funciones de gestión y análisis de código muy potentes. Y también proporciona una gran cantidad de materiales de programación.
Hice algunas pruebas sobre la eficiencia de ejecución de código de algunos compiladores. La siguiente es una descripción general:
1.VectorC, VC 7.0 (muy rápido)
. 2 . Intel C/C, VC 6.0, GCC (muy rápido)
3. DigitalMars C/C (general)
4.LCC-WIN32, BCB, BC5.02 ( más rápido) Lento)
Por supuesto, la prueba que hice es relativamente unilateral. Pero esto refleja en gran medida su estado general.