Jon*_*ler 13
在不同的时间,选择名称的原因有很多. <stdio.h>在有C标准之前很久就被用作名称; 标准简单地标准化现有的做法.所述<stddef.h>报头是原来的(C89)委员会的发明; 选择它的名字是因为它没有被使用.与之相似<stdlib.h>.这个名称<inttypes.h>是现有的做法,但委员会需要<stdint.h>提供独立的实施.<stdarg.h>选择该名称是为了与非原型等价物并行<varargs.h>.这个名字<stdbool.h>没有被使用; 同样,我想,<stdatomic.h>,<stdalign.h>,<stdnoreturn.h>.该std前缀在很大程度上保留用于标准(但我使用的报头"stderr.h",知道我能在薄的冰被踩踏).至于为什么<uchar.h>和<threads.h>没有结束std前缀,我假设一些基本上没有变化的现有技术.AFAIK,C2011理由尚未完成; 它可能会在可用时显示更多信息.