1.3.2 C语言标准
Dennis Ritchie和Brian Kernighan的经典著作《C程序设计语言》(Prentice Hall)自1978年***出版后,一直扮演着非正式的C语言规范的角色。这个版本的C语言俗称K&R C。C语言很快替代了Basic语言和其他语言,成为微型计算机编程的通用语言。因此,为了对当时已经非常流行的C语言进行标准化,美国国家标准协会(ANSI)成立了委员会制定C语言的官方版本。该版本集成了各个厂商的特性和改进,并借鉴了新兴的C++语言的一些经验。这个标准化过程漫长而又艰辛,但是ANSI C在1989年最终顺利完成。1990年,国际标准化组织(ISO)基于ANSI C做了一些有效修改,批准了ISO C90。
1995年,ISO发布了新版的C语言标准ISO C95,虽然该标准很少被执行。在1999年,对C语言做了很多修订,形成了ISO C99标准,它引入了很多新的特征,包括inline函数、新的数据类型、变长数组、C++风格的注释以及新的库函数。该标准的***版本是ISO C11,该版本最重要的功能是格式化的内存模型,支持跨平台的线程可移植性。
对于C++,ISO标准化进展却非常缓慢。经过几年的发展以及非向前兼容的编译器的发布,通过了***代C++标准ISO C98。虽然该标准极大地提高了编译器之间的兼容性,但在某些方面限制了一致性和可移植性。2003年通过了ISO C++03标准。它修复了编译器开发人员遇到的一些bug,但是没有用户可见的变化。下一个是目前***的ISO标准C++11(之前的版本都是C++0x,C++11意味着该版本发布更令人期待),有更多的语言和标准的库附加组件及改进--由于修改非常多,很多人建议C++11作为一门不同的语言,和之前的C++版本区别开。
【责任编辑:book TEL:(010)68476606】
点赞 0