C标准库——程序员等级
首先,还是得说一下C标准库的发展史喽。
C89中有15个标准头文件:
<assert.h> 、<ctype.h> 、 <errno.h>、 <float.h>、 <limits.h>、 <locale.h>、
<math.h> 、 <setjmp.h> 、<signal.h> 、<stdarg.h>、<stddef.h> 、
<stdio.h>、 <stdlib.h>、 <string.h> 、<time.h>
C95增加了3个标准头文件:<iso646.h>、<wchar.h>、<wctype.h>
C99增加了6个标准头文件:
<complex.h> 、<fenv.h>、<inttypes.h> 、<stdbool.h> 、<stdint.h>、<tgmath.h>
C11增加了5个标准头文件:
<stdalign.h>
、
<stdatomic.h>
、
<stdnoreturn.h>
、
<threads.h>
、
<uchar.h>
至于头文件的主要功能,看这里。
到了现在已有29个标准头文件,库在变大,自然功能会加强。虽然C还在更新,并且在编程语言江湖中一直是大佬,
可是很多编译器却并不全部支持C的新标准。哪怕是C的铁杆拥护者GNU开发的gcc,对C99也没有完全支持。
说到底,C的开发过程中常用到的库还是C89标准的库。
或许,编译器不支持的特征恰恰是不需要的呢?或者不那么需要呢?很多编译器厂商,基于成本或者
工程应用需求的原因,剔除一些不那么重要的特性,也就很有必要啦。其实,免费的GCC虽然不完全支持C99,
但也是支持了90%的特性了(可以看这里)。
打住!我都不知道是要说标准、编译器还是标准库啦。来点有趣的东西吧:
有人说,标准库(C89)——也就是ISO C——可以分为3组,根据这3组可以分出三种层次的程序员:
合格程序员:<ctype.h>、<stdio.h>、<stdlib.h>、<string>
熟练程序员:<assert.h>、<limits.h>、<stddef.h>、<time.h>
优秀程序员:<float.h>、<math.h>、<errno.h>、<locale.h>、<setjmp.h>、
<signal.h>
、<stdarg.h>
唉,看样子又得重新来过啦……
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· 展开说说关于C#中ORM框架的用法!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?