OpenEdv-开源电子网

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

stm32定义的变量在跑程序时超过定义范围

[复制链接]

2

主题

2

帖子

0

精华

新手入门

积分
7
金钱
7
注册时间
2022-9-24
在线时间
2 小时
发表于 2022-9-24 20:46:56 | 显示全部楼层 |阅读模式
2金钱
大佬们,我定义了一个u8变量(没有参与计算,只是定义了没用),如果这个数值一直自增,超过最大范围,会怎么样,对整体程序有影响麽

最佳答案

查看完整内容[请看2#楼]

你已经定义了u8,也就是说,只占1个字节内存,最大值255,最小值0。如果一直自增,到了255时再自增就变成00了。 正常来说,你定义的变量如果未使用,编译器提醒并且该变量并不会出现在目标文件里。被当作无效代码被编译器自动帮你优化掉了。
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

3

主题

821

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
3359
金钱
3359
注册时间
2011-11-10
在线时间
207 小时
发表于 2022-9-24 20:46:57 | 显示全部楼层
你已经定义了u8,也就是说,只占1个字节内存,最大值255,最小值0。如果一直自增,到了255时再自增就变成00了。
正常来说,你定义的变量如果未使用,编译器提醒并且该变量并不会出现在目标文件里。被当作无效代码被编译器自动帮你优化掉了。
回复

使用道具 举报

12

主题

3344

帖子

1

精华

论坛元老

Rank: 8Rank: 8

积分
8462
金钱
8462
注册时间
2020-5-11
在线时间
3904 小时
发表于 2022-9-26 09:42:11 | 显示全部楼层
“没用”它怎么会自增?
加减乘法溢出对程序无影响,除法除数为0可能死机。
专治疑难杂症
回复

使用道具 举报

32

主题

183

帖子

0

精华

高级会员

Rank: 4

积分
617
金钱
617
注册时间
2013-1-16
在线时间
131 小时
发表于 2022-9-26 23:05:27 | 显示全部楼层
没有影响,自己溢出,然后重新开始自增
回复

使用道具 举报

0

主题

8

帖子

0

精华

新手入门

积分
12
金钱
12
注册时间
2022-9-25
在线时间
1 小时
发表于 2022-9-27 17:07:22 | 显示全部楼层
欢迎下注,国外正规老牌,有保障,百家乐、21点、轮盘等,祝君好运

1xs1ots.com
回复

使用道具 举报

8

主题

163

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
448
金钱
448
注册时间
2021-12-14
在线时间
70 小时
发表于 2022-9-27 17:34:11 | 显示全部楼层
超过变量的类型就会自己变0
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-2-25 02:06

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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