You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

全C标准(至少含C20)标准库头文件合规性要求查询

C标准库头文件合规性清单(覆盖C89至C20标准)

执行环境前置说明

C标准定义两类执行环境,头文件强制支持范围与环境类型直接相关:

  • 独立环境:无操作系统依赖,多用于嵌入式固件、操作系统内核开发场景,仅要求支持最小集合的基础头文件
  • 宿主环境:运行在通用操作系统之上的常规应用开发场景,要求支持绝大多数标准头文件

C89/C90(ISO/IEC 9899:1990)头文件

标注*的为独立环境强制要求的头文件,其余为宿主环境强制要求:

  • *<stddef.h>:通用类型定义(size_t、ptrdiff_t、NULL等)
  • *<limits.h>:整数类型最值、位数特性定义
  • *<float.h>:浮点类型精度、最值特性定义
  • *<stdarg.h>:可变参数列表处理
  • <assert.h>:运行时断言宏
  • <ctype.h>:字符分类、转换函数
  • <errno.h>:全局错误码定义
  • <locale.h>:区域化配置支持
  • <math.h>:通用数学运算函数
  • <setjmp.h>:非局部跳转支持
  • <signal.h>:信号处理函数
  • <stdio.h>:标准输入输出函数
  • <stdlib.h>:通用工具函数(内存分配、字符串转换、随机数等)
  • <string.h>:内存、字符串处理函数
  • <time.h>:时间、日期处理函数

C99(ISO/IEC 9899:1999)新增头文件

标注*的为独立环境强制要求的头文件,其余为宿主环境强制要求:

  • *<stdbool.h>:布尔类型(bool)与真值(true、false)定义
  • *<stdint.h>:定宽整数类型(uint8_t、int32_t等)定义
  • *<inttypes.h>:定宽整数的格式化输入输出宏定义
  • <complex.h>:复数运算函数与类型定义
  • <fenv.h>:浮点运算环境控制
  • <iso646.h>:C运算符替代宏(and、or、not等)
  • <tgmath.h>:泛型数学函数(自动适配整数、浮点、复数参数)
  • <wchar.h>:宽字符处理函数
  • <wctype.h>:宽字符分类、转换函数

C11(ISO/IEC 9899:2011)新增头文件

标注*的为独立环境强制要求的头文件,其余为宿主环境强制要求:

  • *<stdalign.h>:内存对齐属性宏(alignas、alignof)
  • *<stdnoreturn.h>:无返回函数属性宏(noreturn)
  • <uchar.h>:Unicode字符类型(char16_t、char32_t)与转换函数

C11可选头文件(全环境可选,无强制要求)

  • <stdatomic.h>:原子操作类型与函数
  • <threads.h>:多线程操作类型与函数

C20(ISO/IEC 9899:2020)新增头文件

无独立环境强制要求的新增头文件,宿主环境强制要求:

  • <stdbit.h>:位操作工具宏与函数(位计数、位旋转、字节序转换等)
    C20未新增可选头文件,可选范围与C11一致。

合规性判定总规则

  • 独立环境合规最低要求:仅需实现所有标注*的基础头文件,其余所有头文件均为可选
  • 宿主环境合规最低要求:除<stdatomic.h>、<threads.h>、<complex.h>、<tgmath.h>、<fenv.h>明确为可选外,其余所有上述标准头文件必须实现

内容的提问来源于stack exchange,提问作者barahin844

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 21:06:02