OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 3968|回复: 2

关于 STM32 V3.5 库函数 的一个问题

[复制链接]

71

主题

183

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
494
金钱
494
注册时间
2013-1-29
在线时间
1 小时
发表于 2013-5-31 14:39:24 | 显示全部楼层 |阅读模式

 今天写程序 用3.5的库函数 发现这样一个问题  我定义了一个u32类型数据  出现警告        后追根溯源

 找到stm32库函数中有这样定义   typedef uint32_t  u32;  (这句话在stm32f10x.h的503行处)  然后找unit_32 
发现这句话typedef unsigned    int uint32_t;(这句话在stdint.h中第45行处)
其中 stdint.h中 还有这样的定义
typedef unsigned          char uint8_t;
typedef unsigned short     int uint16_t;
typedef unsigned           int uint32_t;

请问 unsigned short int  和unsigned int  不是一回事吗?  如果一样的话 哪么uint16_t 和 uint32_t 不就是一样了吗?  还有 STM32中的 unsigned long int 跑哪去了? 
请对库函数深入研究过的大虾解释。

我用的是V3.5版本

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

6

主题

48

帖子

0

精华

初级会员

Rank: 2

积分
92
金钱
92
注册时间
2012-11-30
在线时间
0 小时
发表于 2013-5-31 17:06:19 | 显示全部楼层
回复【楼主位】langwanglx:
---------------------------------
我用的是keil3.8A,用sizeof()打印int, short int, long int,分别是4,2,4。
所以unsigned short和unsigned int不是一回事。
而unsigned long int和unsigned int是一回事,都占4个字节,所以就没有unsigned long int了
回复 支持 反对

使用道具 举报

71

主题

183

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
494
金钱
494
注册时间
2013-1-29
在线时间
1 小时
 楼主| 发表于 2013-5-31 18:00:22 | 显示全部楼层
回复【2楼】YS晓:
---------------------------------
恩 我用KEIL4 也测试了 果然是这样 谢谢 呵呵 不过记得以前C语言书上规定 short int 和int 是一样的 今天查了下书 那本书的C语言是在 Turbo C 环境下讲的 呵呵
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-7-19 04:58

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表