为嵌入式系统定义的 unsigned int 在哪里?

Where is unsigned int defined for embedded systems?

使用 arm-none-eabi-gcc 工具链。

在链接器中使用选项 -nostdlib 的 ARM 开发期间,我可以使用 unsigned int、int 等。 但是对于 uint8_t 我必须使用 --specs=nano.specs,因为它们在 newlib 标准库中。

那么 unsigned int 是如何解决的?

我使用 IDE 进行 ARM 开发已经有一段时间了。因此不知道底层的东西是如何工作的。 遇到这些疑惑时正在看一些裸机教程。

谢谢。

unsigned int 是 C 标准定义的基本类型(参见 C99 §6.2.5,第 33 页 here),它没有在其他任何地方定义,编译器已经知道如何处理一下。

uint8_t 和其他类似类型是实现定义的,因此您可以在库头文件中找到它们。