关于C/C++标准

      现在我们学的C语言都是ANSI C(ANSI是美国标准局),后来ANSI C标准被列为国际标准(ISO)。ANSI C标准分为两个标准——C89标准和C99标准,89和99都是指这个标准出现的年份。虽说C99是最新的标准,但并不普及,可以说目前还没有符合C99的编译器。C和C++是不同的两种语言,C++兼容C语言,但随着C99的出现,C++变得并不完全兼容C语言。

      制定ANSI/ISOC++的标准工作始于1990年,第一版标准是在1998年通过的ISO、IEC和ANSI的。第二版标准是在这2003年发布的,即ISO/IEC 1482:2003。现在一般讲C++的书都是以这个标准来讲的。C++不断发展,下一版的标准制定工作早已经开始了,现在处在尾声阶段,新标准一开始预期是在2009年完成,但实现际上现在还没有完成。新版本被称为C++0X,据说目前最新的了。

      C++只是一个编程语言的标准,而不同的编译器只是对这种标准的实现。另外,编译器一般都和编辑器集成到一起组成一个集成编译环境,简称IDE,如MSVC++、BORLAND C++、DEV-C++、code::block、Turbo C++等。另外,DEV-C++和code::block都是移植的GCC

 VC++不是完全标准的c++编译器,虽然vc++不是最标准的,但是用的还是很广泛的,VC++多数情况下还是符合C++标准的,只是用MFC的时候,很多C++的类型被重新定义了。到了VS2003以后,也就是VC7.x编译器之后,对C++标准的支持有所改善,目前VS2005、2008应该对标准都支持的挺好的。VC++和BORLAND C++都遵循C++的标准,但在细节上会有区别,VC是微软公司出品,BC是BORLAND 公司出品,由于windows的普及,以及对windows的良好支持,VC的使用量就超过了BC。采用GCC编译器的DEV-C++和code::block当然对C++的标准支持的比较好。GCC本来是用于UNIX/Linux上的C/C+开发的,是属于GNU计划的开源项目,因此它是开源的。

                                                                            关于C/C++标准_第1张图片

                                                                      不是庐山真面目,只缘身在此山中

                          

你可能感兴趣的:(c,windows,gcc,语言,编译器,Borland)