Spe*_*cer 19 c++ standards language-lawyer c++23
(我最初的问题是关于“发生了什么_BitInt?”但这是基于对某些 cppreference 页面的误读)。
C++23 标准草案的库简介第 16.2 节表示 C++ 支持 C 标准库。然而,对特定 C 标准的唯一引用是在 16.3 的脚注 (#141) 中。这是 2018 年 C 标准,其中没有提到_BitInt. _BitInt但我在 C 23 标准草案中找到了描述。
C++23 标准是否包含特定版本的 C 标准库?
Bri*_*ian 13
引用N4950 2.2(C++23标准的最终工作草案):
- ISO/IEC 9899:2018 第 7 条中描述的库在下文中称为 C 标准库3。
3根据第 17 条至第 33 条以及 C.7 中规定的资格,C 标准库是 C++ 标准库的子集
请注意,虽然 C++23 标准命名了特定的 C 标准库版本,但实现仍然可以提供任何附加功能作为语言扩展。这可能包括对 C 标准库更高版本的支持或对 C 核心语言功能的支持(如_BitInt(N))。例如,GCC 和 Clang 在编译 C++ 代码时都提供C99 VLA作为语言扩展,而 Clang在编译 C++ 代码或早期版本的 C 代码时支持 C23_BitInt(N)作为扩展。
您误读了 cppreference,尽管它的名称是 C 的参考。您链接的页面描述了 C23 标准,因此列出该标准中添加的内容是有意义的。您链接的维基百科页面适用于 C++23,但没有提及_BitInt.
| 归档时间: |
|
| 查看次数: |
1360 次 |
| 最近记录: |