gpt4 book ai didi

c++ - 遵守 C\C++ 标准有哪些责任?

转载 作者:太空狗 更新时间:2023-10-29 19:57:45 25 4
gpt4 key购买 nike

有点愚蠢的问题。例如我读过,在 C11 中添加了对线程的支持。然后,例如我的STM32F4的GCC编译器说,它支持C11标准。那么,这是否意味着现在没有操作系统我将获得线程支持???但这怎么可能呢?

另一个例子 - 用于 STM32 的 g++ 支持 std::vectors,并且 IT WORKS,即使没有操作系统的内存管理。这意味着编译器内部有一些内存管理器?或不?

最佳答案

有两种 C 实现 — hosted 实现,提供标准库,freestanding 实现,只需要提供核心语言和最小数量标题。嵌入式系统的实现通常是独立的。这在 the C11 spec 的第 4 节中有详细描述。 .

此外,即使在托管实现中也可以省略许多功能。特别是,线程支持是可选的(省略线程支持的托管实现必须定义宏 __STDC_NO_THREADS__)。这在规范的第 6.10.8.3 节中进行了描述。

关于c++ - 遵守 C\C++ 标准有哪些责任?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30257576/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com