⑴ C语言编译器有哪些各有什么特点
C语言编译器目前主要有VC++、dev-C++、C-Free、win-TC、TC 2.0等等。
其中比较经典的VC++,微软的产品,编译器,链接器,运行,调试等功能于一体的强大开发工具,特点是功能十分强大,对于新手来说需要一段时间去摸索。
dev-C++是windows下一款开发c/c++的开发环境,使用gcc为编译器,遵循标准,功能比较强大,语法高量,可以进行单步调试(这对排除错误很重要),进行断点设置等功能,遵循C标准,是一款很强大的开发工具。
C-Free是一款支持多种编译器的专业化C/C++集成开发环境(IDE)。利用C-Free,使用者可以轻松地编辑、编译、连接、运行、调试C/C++程序。
TC 2.0:Borland公司的产品,在dos界面下编译运行,小巧、灵活,但是不能使用鼠标。
win-TC:在tc2.0的基础上加上了界面,能够使用鼠标,具有语法高量,可以嵌入汇编等特点,对新手一些,拜托了不能用鼠标的困难。
编译器,简单讲,就是将“一种语言(通常为高级语言)”翻译为“另一种语言(通常为低级语言)”的程序。一个现代编译器的主要工作流程:源代码 (source code) → 预处理器 (preprocessor) → 编译器 (compiler) → 目标代码 (object code) → 链接器(Linker) → 可执行程序 (executables)。
⑵ 都有哪些好的c语言编译器阿
1. GCC
大名鼎鼎的GNU的C/C++/Obj-C编译器, 当前版本是2.8.1, 但据说与2.7.*有兼容性
问题. 而使用较广的是gcc 2.7.2系列, 如RedHat5中带的就是gcc 2.7.2.3
有时候在Cyrix上用gcc会有些问题, 因此有一套针对Cyrix特点的gcc 2.7.2.3
我这里有RedHat5的rpms ftp://166.111.68.98/pub/Warez-CD/Huricane-contrib
(Cyrix 2.7.2.3 & 2.8.1)
其基本结构就是一个front end和back end,
/usr/bin/gcc 就是个front end, 其kernel东西都放在 /usr/lib/gcc-lib下面,
cpp是C预处理器, cc1*的1M多的就是编译器的核心模块了
cc1 C compiler
cc1plus C++ compiler
cc1obj Object-C compiler
但gcc并没有集成Fortran的compiler, 一般要用f2c转成C后才用gcc编译
好象也还有个g77 Fortran compiler吧?
gcc的不断发展完善使许多commercial compiler都相形见绌, 那当然, gcc/emacs
都由GNU创始人Richard Stallman手创, 是GNU的旗舰产品, 质量当然没得说了:-)
由于 Unix平台的高度可移植性, gcc几乎在各种常见的Unix平台上都有, 即使是
Win32/DOS也有gcc的port. 比如说该死的Solaris普通版本连compiler都没有, 也
就只好用gcc了...
2. EGCS(Experimental/Enhanced GNU Compiler System)
这是gcc的发展方向, 把fortran等编译器集成进来, 也许还会有Pascal?
它的构造很清晰, 把对gcc的各种改进/port都集成回去. 如gcc 2.7系列据说是
没有对Pentium进行优化的, 而egcs则把pgcc对Pentium的一些优化集成进去了
现在gcc的开发工作主要就是egcs, 由Cygnus公司领导(?), 这Cygnus公司还是很
不错的, 还出了GNU-Win32, SourceNavigator等, 是GNU的坚实拥护者:-))
http://egcs.cygnus.com
包括了C/C++/Obj-C/Fortran 编译器, 当前最新版本1.0.2, 还在不断开发中
昨天download发现KDE Beta4都用egcs编译了 :-)
Fortran集成进来后在/usr/lib/gcc-lib下又多了个f771的back end, 当然
还是g77/f77 编译
我这里有egcs 1.0.2 的rpm 在RH5-CD/collect下面
3. PGCC(Pentium GCC)
http://www.gcc.ml.org
针对Pentium CPU进行了编译器优化的compiler
pgcc据说用JPEG压缩解压缩测试最快可比gcc快 30%!
新版的pgcc都是基于egcs的, 以一个patch的形式release
⑶ 现在还有学c语言的必要吗 知乎
了解一些总是好的
⑷ c语言编译器的选择
关于C语言编译器的选择(Tc2.0,Tc3.0,Vc6.0等)
我们在学习C语言时通常会面临C语言编译器的选择,事实上C语言编译器可以分为C和C++两大类,其中C++是C的超集,均向下支持C。主要的C语言编译器及特点分别如下:
(1)TC 2.0DOS平台软件。最经典的C语言编译器,系统体积小,简单易学,容易上手,而且很多前人或书籍的程序均基于该编译器,是学习C语言的首选。不过它不支持鼠标,但读者如果掌握几个快捷键,操作时对鼠标可能就不怎么需要了,如:F2 存盘 F3 打开程序 Alt+F3在最近打开的文件之间切换 Alt+F5观察运行结果F9 编译制作EXE Ctrl+F9编译并运行Ctrl+Y 删除当前行 Ctrl+KB定义块首 Ctrl+KK 定义块尾 Ctrl+KC复制块 Ctrl+KY删除块Ctrl+KV 移动块
(2)Tc3.0DOS平台软件。目前比较不错的C/C++语言编译器,支持鼠标,语法着色,多文档,错误跟踪也很好,操作与TC2.0有很多类似,TC2.0会用那么TC3.0也很快会用,缺点是以前很多代码是用TC2.0设计的,而由于TC3.0语法要求的严格性,如要求函数必须定义类型,所以向下存在一定的兼容性问题,所以对于初学者选择起来很矛盾,建议先学会使用TC2.0,而把TC3.0作为能力的补充和平时工具之用。目前有的教材已经选用该编译器,不过需要一个较长的调整期,因为很多源代码需要过渡过来才行,虽然性能上比TC2.0有所提高,但对于初学者没有质的变化,选择时需要注意。
(3)VC++ 6.0Windows平台。目前主流的C/C++语言编译器,包含强大的类和内嵌WinAPI的MFC,具有可视化的编程界面。对于TC等的作品也具有向下兼容的特点,建议读者选用作为C语言过渡到Windows平台编程的首选工具。当然,作为学习,该系统显得有点庞大,不过通过入门的学习,调试旧的Tc程序也可以。还有其他的编译器,例如Win tc、gcc、lcc、BC 3.1等等,事实上,编译器的选择不是最重要的,他们都可以完成基本的C语言编译,不过面向考试的时候,还是根据考试的要求,因为编译器的编译结果存在着一定的差别,特别在一些复杂语法的语句编译上。从目前的形势看,对于从未学习过计算机程序设计的读者来说,学习C语言时,建议开始选择Tc2.0,虽然不能使用鼠标,但几个快捷键的熟练运用基本上可以解决操作的问题,当然有时间的时候了解使用TC3.0就更好了;对于学习过TC2.0的读者来说,平时完全可以在TC3.0或VC 6.0下调试程序,但考试的时候如果要求必须在TC2.0下,那最好上机练习时在TC2.0下。当然,使用如记事本等文本编辑器编辑程序,然后用TC来调试也不失为一种好方法。另外,DOS平台的Tc2.0或Tc3.0都存在某些机器运行时键盘响应迟缓或停顿的问题,Tc3.0可能这种现象要多一点,这主要是由DOS基本内存的不足造成的。可以安装水平考试课题组提供的DOS模拟器来解决问题,该模拟器重新划分更多的内存,效果不错。
新的类似软件平台也需要读者关注,那就是java和Viusal C#,因为从发展的眼光来看,目前软件设计平台有一定的趋同趋势。例如:java和C#,都来自于C和C++,都作了不错的扩展和优化。对于深入学习C语言的同学,未来几年请务必学习VisualStudio.Net或者Java,因为这二者代表了现在的软件设计主流。他们的主要特点是:优秀的IDE设计环境,强大的WEB服务设计功能,对C++的优化和扩充,基于虚拟机的运行模式,优秀的面向系统开发,可视化的较为成熟的面向对象的程序设计机制等等.
⑸ linux系统下C语言编译器
vs系列既然叫studio,就说明他是集成了所有东西。
GCC仅仅是compiler collection,编译器的集合,如果需要搞成IDE,还需要其他软件配合。我现在使用gcc+vim+gdb
也正是因此,我才感觉到vi的确是功能强大。
随便搜了个帖子,希望对你有所帮助
http://hi..com/mikeking20031/blog/item/954b6d06e12f587e03088160.html
⑹ 开发C语言的编译工具有哪些,各自的有什么特点
C语言编译器 还是有的。Turbo C这个古老的C语言编译器还是要给出的,毕竟问题问的是C语言的。像 那些单片机 和 一些 特殊领域 只能用C 不一定说C++就是好的。C和C++的区别就是效率问题。作为我们平时应用的软件来说 C 和C++这点效率 可以不用考虑,但是在某些特殊的领域,他们却更关注效率。第二点要补充的就是VC++的特点 就我个人感觉而言,是功能强大,用起来顺手,但是它有非常致命的缺点,就是 这是一个微软出品的C++编译器,两点缺点,1 修改了太多标准,2该编译器只能运行在windows 平台。 DEV C++ 和 另外一个编译器 Bloand..怎么拼来着,总之 是跨平台的。虽然用起来不是那么方便,但是 可以跨平台。何意?就是说,如果将这两个编译器 在windows下编译,则可以编译出windows应用程序。在linux下编译,则可以编译出 linux应用程序。在linux平台上 有个专门的编译器 叫GC++。我个人不太在那个平台上操作,对此不是特别清楚。VC++根本就不能在windows外的平台上使用,如何编译?就是这样,
⑺ C语言本身是用什么语言开发的汇编
如果问的是C语言编译器的话,第一个C语言的编译器应该是汇编开发的,但是以后就可以用C语言开发C语言编译器了,编译这东西并不存在想当然的“大鱼吃小鱼”的规则,用理论上用JAVA来开发C语言的编译器都是可以的,但是JAVA运行在JVM上而JVM又是C++开发的,绕了一圈,所以用JAVA这种虚拟机语言开发编译器不是一种好选择,据我所知JAVA的编译器JAVAC倒是用JAVA开发的。
在当下很多编译器包括C语言的编译器都用C或者C++或者C/C++混合开发了,连nasm汇编器都是用C/C++开发的,“编译器悖论”
现在90%的编译器都是用C/C++开发的,包括他们自己的编译器
⑻ 学嵌入式需要学习哪些知识 知乎
C/C++语言程序设计
嵌入式硬件设计(如果只搞软件需要能看懂原理图)
嵌入式操作系统(可以只学习用到的操作系统的粗框架,大体结构、组成部分)及其操作
-Linux
-WinCE(如果用到)
嵌入式操作系统开发
-内核裁剪
-文件系统组成和实现
-驱动开发(如果需要)
-启动方式及其实现:BootLoader及其烧写,Flash、SD卡、串口、网口烧写及启动
-如何架构开发环境
-利用nfs及串口控制台调试:方法,步骤
最好利用现成的开发平台学习
⑼ c语言编译软件有哪些
6款好用的C语言编译器推荐
一些刚开始接触C语言编译的网友想下载一款C语言编译器来使用,不过,网络上有不少C语言编译器相关的软件,让人很难抉择。那么,C语言编译器哪个好?今天的文章里,小编给大家整理了6款好用的C语言编译器推荐给大家,需要C语言编译器的网友,不妨了解一下!
一、Dev-C++
Visual Studio(VS) 是一套非常完备的工具和服务,可帮助您为 Microsoft 平台和其他平台创建各种各样的应用程序。Visual Studio 还可将您所有的项目、团队和利益干系人联系在一起。现在您的团队可以从任何位置以虚拟方式进行更为敏捷的合作,无论他们采用何种开发工具。
功能介绍
可以通过强大的集成开发环境构建面向 Windows、Android、iOS 以及 Web 的出色应用。使用任何 IDE 或编辑器在云中进行版本控制、敏捷、持续交付、应用程序分析协作。
适用于所有操作系统的编辑器使用可在 Windows、OS X 或 Linux 上运行的免费代码编辑器构建和调试现代 Web 和云应用程序。
⑽ 适合win10系统的c语言编译器
桌面操作系统
对于当前主流桌面操作系统而言,可使用 VisualC++、GCC以及 LLVM Clang 这三大编译器。
Visual C++(简称 MSVC)只能用于 Windows 操作系统;GCC 和 LLVM Clang除了可用于Windows操作系统之外,主要用于 Unix/Linux操作系统。
像现在很多版本的 Linux 都默认使用 GCC 作为C语言编译器,而像 FreeBSD、macOS 等系统默认使用 LLVM Clang 编译器。由于当前 LLVM 项目主要在 Apple 的主推下发展的,所以在 macOS中,Clang 编译器又被称为 Apple LLVM 编译器。
MSVC 编译器主要用于 Windows 操作系统平台下的应用程序开发,它不开源。用户可以使用 Visual Studio Community 版本来免费使用它,但是如果要把通过 Visual Studio Community 工具生成出来的应用进行商用,那么就得好好阅读一下微软的许可证和说明书了。
而使用 GCC 与 Clang 编译器构建出来的应用一般没有任何限制,程序员可以将应用程序随意发布和进行商用。
MSVC 编译器对 C99 标准的支持就十分有限,加之它压根不支持任何 C11 标准,所以本教程中设计 C11 的代码例子不会针对 MSVC 进行描述。所幸的是,Visual Studio Community 2017 加入了对 Clang 编译器的支持,官方称之为——Clang with Microsoft CodeGen,当前版本基于的是 Clang 3.8。
也就是说,应用于 Visual Studio 集成开发环境中的 Clang 编译器前端可支持 Clang 编译器的所有语法特性,而后端生成的代码则与 MSVC 效果一样,包括像 long 整数类型在 64 位编译模式下长度仍然为 4 个字节,所以各位使用的时候也需要注意。
为了方便描述,本教程后面涉及 Visual Studio 集成开发环境下的 Clang 编译器简称为 VS-Clang 编译器。
嵌入式系统
而在嵌入式系统方面,可用的C语言编译器就非常丰富了,比如:
用于 Keil 公司 51 系列单片机的 Keil C51 编译器;
当前大红大紫的 Arino 板搭载的开发套件,可用针对 AVR 微控制器的 AVRGCC 编译器;
ARM 自己出的 ADS(ARM Development Suite)、RVDS(RealView Development Suite)和当前最新的 DS-5 Studio;
DSP 设计商 TI(Texas Instruments)的 CCS(Code Composer Studio);
DSP 设计商 ADI(Analog Devices,Inc.)的 Visual DSP++ 编译器,等等。