久芯网

stm32HAL库数据定义问题

avatar sealoong 提问时间: 2023-07-02 21:22:43 / 已解决

uint32_t,是经常能遇到的stm32hal中的数据定义类型,很明显他的意思是用typedef定义的无符号32位int型。我为了验证我自己的想法进行了跳转操作。跳转打开的文件如下。

就打开三个跳转文件而已stm32HAL库数据定义问题 [相关图片]

但我看到第三个文件时就懵了,如下图。

stm32HAL库数据定义问题 [相关图片]

蓝色字体语句为如果定义了INT8_TYPE就把它更名为int8_t。但是我继续跳转时候发现已经跳转不了了,这就是INT8_TYPE__发源地,那如果这里是发源地的话,40行的语句条件并不满足,因为从未定义过。所以下面的41更名不可能被执行,那就说不通了,最开始main函数里面的uint32_t就不能被使用。

这就是我困惑的地方。

我还寻思是不是DEFAULT_TYPES.H头文件里面还包含什么,我就打开了它唯一包含的头文件如下图!sys/features.H

stm32HAL库数据定义问题 [相关图片]

不幸的是我依旧没找到任何定义__INT8_TYPE__的地方。

请技术大神闲暇之余看看我的小问题,多谢!

2个回答
  • avatar 知足-
    最佳答案
    回答时间: 2023-07-02 21:39:33

    这些基本类型是GCC编译器默认定义的宏

  • avatar sealoong
    回答时间: 2023-07-02 22:12:31

    感谢大佬,终于找到根源了,不再迷糊

会员中心 微信客服
客服
回到顶部