C语言两种经典的标准有什么不同?
- 2025-07-17 08:20:00
关注+星标公众号,不错过精彩内容
编排 | strongerHuang
这些年C语言也是热门的语言之一,今天就给大家分享一下C语言C89和C99两种经典的标准有什么区别。
C标准历史

C89和C99主要区别
for(int i=0; i<10; i++){
// do someting ...
}
double *fp = (double[]) {1.1, 2.2, 3.3};
int x[10] = {[0] = 10, [5] = 30};
struct example{ int k, m, n; } object = {m = 10,n = 200};
<assert.h> 定义宏assert() <ctype.h> 字符处理 <errno.h> 错误报告 <float.h> 定义与实现相关的浮点值勤 <limits.h> 定义与实现相关的各种极限值 <locale.h> 支持函数setlocale() <math.h> 数学函数库使用的各种定义 <setjmp.h> 支持非局部跳转 <signal.h> 定义信号值 <stdarg.h> 支持可变长度的变元列表 <stddef.h> 定义常用常数 <stdio.h> 支持文件输入和输出 <stdlib.h> 其他各种声明 <string.h> 支持串函数 <time.h> 支持系统时间函数
<complex.h> 支持复数算法 <fenv.h> 给出对浮点状态标记和浮点环境的其他方面的访问 <inttypes.h> 定义标准的、可移植的整型类型集合。也支持处理最大宽度整数的函数 <iso646.h> 首先在此1995年第一次修订时引进,用于定义对应各种运算符的宏 <stdbool.h> 支持布尔数据类型类型。定义宏bool,以便兼容于C++ <stdint.h> 定义标准的、可移植的整型类型集合。该文件包含在<inttypes.h>中 <tgmath.h> 定义一般类型的浮点宏 <wchar.h> 首先在1995年第一次修订时引进,用于支持多字节和宽字节函数 <wctype.h> 首先在1995年第一次修订时引进,用于支持多字节和宽字节分类函数
C89中,表达式中类型为char,short int或int的值可以提升为int或unsigned int类型. C99中,每种整数类型都有一个级别.例如:long long int 的级别高于int, int的级别高于char 等.在表达式中,其级别低于int或unsigned int的任何整数类型均可被替换成int或unsigned int类型.
------------ END ------------
关注公众号回复“加群”按规则加入技术交流群,回复“1024”查看更多内容。
声明:本文内容及配图由入驻作者撰写或合作网站授权转载。文章观点仅代表作者本人,不代表科技区角网立场。仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。
点击这里
扫码添加微信

- 点赞 0
-
分享
微信扫一扫
-
加入群聊
扫码加入群聊