C99:C89的增强与新特性概述
3星 · 超过75%的资源 需积分: 14 65 浏览量
更新于2024-07-30
1
收藏 1.35MB PDF 举报
C99是对C89标准的重要升级,它是C语言发展史上的一个里程碑,标志着C语言功能的增强和现代化。C99标准在1999年由ISO/IEC发布,ISO/IEC 9899:1999(E)成为正式的标准文档。该标准的主要变化包括:
1. **基本数据类型和关键字的扩展**:C99引入了更多的基本数据类型,如`long long`和`unsigned long long`,以及`long double`,这提升了数值计算的精度。同时,它还引入了几个新的关键字,如`restrict`用于指明函数参数的访问限制,以及`inline`关键字的更明确的用法。
2. **大字符集支持**:C99对大字符集进行了优化,使得程序能够更好地处理多字节字符集,增强了跨平台兼容性。
3. **系统函数的增加**:标准库中新增了许多实用的系统函数,比如内存管理函数`malloc`和`free`的变体,以及与内存分配和线程相关的API,这提高了程序员编写高效代码的能力。
4. **C++的关联**:虽然C++基于C89,但C99的发展也间接地影响了C++,尤其是当C++编译器开始支持C99特性时。
5. **编译器支持**:C99得到了GCC和Borland C++等主流编译器的支持,这意味着开发者可以利用这些工具来利用新特性,而无需担心兼容性问题。
6. **标准化进程**:C99在C语言标准停滞多年后的革新,它标志着C语言进入了一个新的时代,为后续的C11、C17等标准打下了基础。
7. **标准化与批准**:ANSI在2000年3月正式接受并批准了C99作为美国国家标准,确保了其在业界的广泛接受和应用。
C99标准的引入不仅提升了C语言的性能和功能,还促进了软件开发的标准化和规范化,对现代软件工程有着深远的影响。学习和掌握C99对于任何从事C语言开发的工程师来说都是至关重要的。
116 浏览量
176 浏览量
2011-11-09 上传
2021-03-09 上传
2008-03-03 上传
2009-04-09 上传
2008-12-10 上传
TNT_snowball
- 粉丝: 4
- 资源: 4
最新资源
- Dansa:适用于三星 Gear 2Gear 2 NeoGear S 的应用程序
- Socket异步传输(聊天发消息)的C#实例
- JustJava:一个简单的咖啡订购Android应用程序
- flutter-demo:使用flutter docs演示创建的flutter应用程序
- JonahSpear.github.io:个人网站简历
- portfolio2:作品集网站(HTML,CSS,JavaScript)
- 组件测试仪UNO Shield-电路方案
- cam_board:将网络摄像头变成黑色的白板
- repository_github
- spring-jdbc-learning
- arduino-server:由 hapi 和官方 arduino 工具链支持的 Arduino 构建服务器。 包含 Dockerfile
- read-property:从Java属性文件中读取属性
- C#调用google搜索引擎结果的实例
- face_web:face_web
- InfinityTeam:安卓
- 振铃系统-项目开发