纯c编译器
Ⅰ bcb怎样编译纯c和c++文件
c语言是结构化和模块化的面向过程的语言,C++语言是面向对象的程序设计语言。C++语言是C语言的超集,也就是说学会了C++,你其实已经把C语言学会了。至于说有什么区别,应该说是编程思想的区别吧,C是基于过程的,强调的是程序的功能,以函数(功能)为中心。C++是面向对象的,强调程序的分层、分类,以抽象为基础,进行对象的定义与展示,即程序设计。具体说来话长。建议你学习C++的时候,学会用面向对象的方式思考和编程。现在在开发大项目的时候,都是应用面向对象的分析和设计的技术。
C和C++的区别有什么
今天在网易上看到有人问C和C++的区别有什么,在这里简略说点.
其他的东西都不需要多说,就象类,继承,引用等,大家都知道.
这里讲的是调用编译的区别.大家看WIN32 SDK的头文件,总是可以看到
ifdef __cplusplus
extern "C"
endif
ifdef __cplusplus
endif
这个就是直接能够体现实际编程时区别的地方. 在WIN系列下.所有的WIN32 SDK提供的LIB都是以C的形式存在的.当然,C和C++同样都支持C,STDCALL,FASTCALL调用.为什么系统提供C编译器编译的LIB而不是C++编译的LIB呢?这里其实就是C和C++编译器不同的地方.
所有的函数名称只有在汇编编译器下才最清楚.因为经汇编编译器编译的函数不经过任何修饰.
C 的编译器编译出来的函数名称如果在汇编编译器看来一个C调用将在函数名前家下划线('_').而一个STDCALL的函数将是_FUNC@NUMBER的形式.如FUNC(void)经过编译器后成为_FUNC@0.一个FASTCALL调用的函数被编译成@FUNC@0.顺便提一下.在WIN32的编译器里不再需要PASCALL调用.VC6已经取消了对PASCALL的支持.
光看C的编译还不够,看一下C++编译器是怎么干的.在缺省情况下.一个C++的函数经过C++编译器后编译出的函数名包括函数名,所属的类,参数类型,调用约定,返回类型.而且更要命的是这么多的信息,只有函数名和类名在编译后还依稀可见.其他就是一长串的ABCD字母,根本就是无法辨认其意义的.我们在VC手册里可以看到
一个例子:
void __stdcall b::c(float); -----------> ?c@b@@QAGXM@Z
一个函数被编译得连名字也不知道怎么样了.这么一来.如果SDK提供的是C++编译器提供了LIB.那么可以说就无法编译任何一个完整的WIN程序.更加不用说什么混合语言编程.
现在,VC编译器提供了个extern语句.当出现extern 'C'语句,括号里的函数将以C方式经过编译器.从而使提供库程序方便那么点.
C语言与C++的区别有很多:
1,全新的程序程序思维,C语言是面向过程的,而C++是面向对象的。
2,C语言有标准的函数库,它们松散的,只是把功能相同的函数放在一个头文件中;而C++对于大多数的函数都是有集成的很紧密,特别是C语言中没有的C++中的API是对Window系统的大多数API有机的组合,是一个集体。但你也可能单独调用API。
3,特别是C++中的图形处理,它和语言的图形有很大的区别。C语言中的图形处理函数基本上是不能用在中C++中的。C语言标准中不包括图形处理。
4,C和C++中都有结构的概念,但是在C语言中结构只有成员变量,而没成员方法,而在C++中结构中,它可以有自己的成员变量和成员函数。但是在C语言中结构的成员是公共的,什么想访问它的都可以访问;而在VC++中它没有加限定符的为私有的。
4,C语言可以写很多方面的程序,但是C++可以写得更多更好,C++可以写基于DOSr程序,写DLL,写控件,写系统。
5,C语言对程序的文件的组织是松散的,几乎是全要程序处理;而c++对文件的组织是以工程,各文件分类明确。
6,C++中的IDE很智能,和VB一样,有的功能可能比VB还强。
7,C++对可以自动生成你想要的程序结构使你可以省了很多时间。有很多可用的工具如加入MFC中的类的时候,加入变量的时候等等。
8,C++中的附加工具也有很多,可以进行系统的分析,可以查看API;可以查看控件。
9,调试功能强大,并且方法多样。
Ⅱ 如何在VS 编译器下 使用纯 C 语言编译器
C语言编译器都是独立运行并对c代码进行编译的,不像其他的类,库,项目那样可以在run time被调用或传参的。
Ⅲ 目前最好用的c语言编译器
没有最好用的,只有最适用的C编译器,因为C语言是平台依赖型系统高级语言。在linux上就是GCC用的最多,Windows上就是VC
Ⅳ 新手用什么c语言编译器
TC吧,但是TC不能复制、粘贴,如果觉得TC不好,就用VC++ 6.0或DEV C++都行,虽然是C++的编译环境,但C语言也可以用的
Ⅳ c语言编译器哪个好
还是用dev c吧,采用的是gcc编译器,号称99.9%符合ANSI 标准,而且小巧可爱, 如果你是初学c的话用它再好不过了.在网上去下一个dev C++(含有c编译器的), 安装后在编译选项里面把编译器设置成c编译器就可以了
tc是dos界面的,所以用起来很不爽
visual c++太庞大, 而且他有很多地方与ANSI标准不兼容
Ⅵ C语言编译器
目前比较流行的包括微软的Visual C++,GCC, Turbo C等。
个人比较推荐GCC,对于初学者而言,虽然Visual C++比较快上手,它帮助开发人员快速新建工程,并添加工程相关代码,只需要在这个平台之上直接开发代码即可,但是这个平台把C语言的一些很关键的东西给省略了,例如Makefile,例如一些基本的库函数的引用之类的。
GCC能让开发人员从编译器的角度出发,把程序的编译,链接等一步一步都完全展示出来,而且也是建立的ANSI C的基础上的,推荐GCC。开发者可以利用一些简单的文本编辑器进行程序的编写,然后通过GCC来编译,这样可以在起步就不收到包括Visual C++的限制,让初学者可以更关注与整个程序的编译过程。
当然如果说到调试方法的话,建议采用Visual C++,它提供的单步跟踪功能确实非常好,不过在GCC下也可以用GDB进行操作,一起看个人的喜好。
Ⅶ 目前最流行的C语言编译器是哪个
最适合初学者的是DEV-C++.与VC++类似,几乎一摸一样,只不过只有几M。
最好还是先使用DC,然后逐渐过渡到VC,这两个我都有,如果你要的话我发给你DC,以及VC的绿色简化版。
Ⅷ Windows平台下,C语言编译器(非C++编译器)有哪些最新版本!
没意思的事,不正确的说法,就是纯C开发嵌入式系统,仍然是在另一个平台使用C编译器写好代码。要想在原生平台使用纯C,必须要用汇编把机器给启动再实现一个小型功能平台,实现一些规范和接口,在此基础按C规范实现一个小的C编译器,再一步步扩张成一个功能更完善的东西来用它直接开发软件。
要在windows下使用你所谓的纯C,那么你要熟悉系统内核接口,ABI(应用程序二进制接口)规范,根据它来实现ANSI-C规范的编译器。
或者很简单,使用VC编译器,不使用任何库,纯调用内核功能号来写C代码。
Ⅸ 目前主流的C语言编译软件是什么
C语言相比其他很多新兴的、复杂的语言,语法还是简单一些,较好实现的。
所以在C语言几十年的发展中出现了各式各样的编译器,还有一些容易被误解为编译器的IDE。
这里列举几个主流的:
GCC
毫无疑问,GCC几乎是unix及linux系统中最通用的编译器套件,几乎所有的linux发行版都预装了GCC作为C语言的默认编译器。除了对C语言的支持,GCC还支持C++、Objective-C等多种语言。GCC早在1987就由Richard Stallman作为GNU计划的一部分发布。
Clang
Clang是近几年新兴的C/C++以及Objective-C的编译器,Apple是其主要投资者,其最初的开发者已加盟Apple。虽说是新兴,但其对C/C++标准的支持不亚于GCC等老牌编译器,并且外部接口和GCC完全兼容,并且因其模块化、错误提示完善等优点已经越来越受到重视。一些如FreeBSD等项目已将clang作为默认编译器。
其实Clang并不是一个完整的编译器,而是作为同一批开发者开发的另一个备受关注的虚拟机(类似于JVM)的llvm的一个前端开发,只是负责将C语言源码编译为llvm IR的中间语言,再由llvm编译为目标代码,这样做可以让其可移植性更好。
Microsoft Visual C++
作为拥有可视化集成编程系统的编译器,VC被很多使用Windows作为开发环境的初学者使用。详见网络的介绍
http://ke..com/view/2070966.htm?fromtitle=vc&fromid=7792954&type=syn#viewPageContent
Ⅹ 常见的C语言编译器是什么
目前最流行的C语言编译器有以下几种:
1、GNU Compiler Collection 或称GCC
GCC(GNU Compiler Collection,GNU编译器套件),是由 GNU 开发的编程语言编译器。它是以GPL许可证所发行的自由软件,也是 GNU计划的关键部分。
GCC原本作为GNU操作系统的官方编译器,现已被大多数类Unix操作系统(如Linux、BSD、Mac OS X等)采纳为标准的编译器,GCC同样适用于微软的Windows。GCC是自由软件过程发展中的着名例子,由自由软件基金会以GPL协议发布。
2、Microsoft C 或称 MS C
Microsoft C 是c语言的一种IDE(集成开发环境),常见的还有Microsoft Visual C++,Borland C++,Watcom C++ ,Borland C++ ,Borland C++ Builder,Borland C++ 3.1 for DOS,Watcom C++ 11.0 for DOS,GNU DJGPP C++ ,Lccwin32 C Compiler 3.1,High C,Turbo C等等......
3、Borland Turbo C 或称 Turbo C
Turbo C是美国Borland公司的产品,Borland公司是一家专门从事软件开发、研制的大公司。该公司相继推出了一套 Turbo系列软件, 如Turbo BASIC, Turbo Pascal, Turbo Prolog, 这些软件很受用户欢迎。
(10)纯c编译器扩展阅读:
C编译的整个过程很复杂,大致可以分为以下四个阶段:
1、预处理阶段在该阶段主要完成对源代码的预处理工作,主要包括对宏定义指令,头文件包含指令,预定义指令和特殊字符的处理,如对宏定义的替换以及文件头中所包含的文件中预定义代码的替换等,总之这步主要完成一些替换工作,输出是同源文件含义相同但内容不同的文件。
2、编译、优化阶段编译就是将第一阶段处理得到的文件通过词法语法分析等转换为汇编语言。优化包括对中间代码的优化,如删除公共表达式,循环优化等;和对目标代码的生成进行的优化,如如何充分利用机器的寄存器存放有关变量的值,以减少内存访问次数。
3、汇编阶段将汇编语言翻译成机器指令。
4、链接阶段链接阶段的主要工作是将有关的目标文件连接起来,即将在一个文件中引用的符号同该符号在另外一个文件中的定义连接起来,使得所有的目标文件成为一个能够被操作系统装入执行的统一整体。