矿石收音机论坛

 找回密码
 加入会员

QQ登录

只需一步,快速开始

搜索
查看: 2303|回复: 2

整形 和 长整型,同样的数未溢出效果却不一样!

[复制链接]
     
发表于 2018-2-11 22:08:41 | 显示全部楼层 |阅读模式
刚编程过程中发现个问题不解,特来赐教。
同样一个 k=60000 的数,定义K为无符号整型unsigned int 和 无符号长整型unsigned long,按理说60000这个数无论用哪个数据类型来定义都未溢出,效果应该是一样的啊,可是在如图这个自减延时的程序中明显用unsigned long无符号长整型定义出来的延时效果要长好多,几乎是5倍那么久,有情老师登场!
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.jpg
     
发表于 2018-2-13 15:59:26 | 显示全部楼层
猜测有可能unsigned int 占4(2)字节,unsigned long 占8(4)字节,做减法后判断的地方要多点,看看编译后的汇编程序
回复 支持 反对

使用道具 举报

     
发表于 2018-2-14 14:30:56 | 显示全部楼层
unsigned int 占2字节,unsigned long 占4字节,同样做一次减法花费时间不一样,造成延时不一样。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 加入会员

本版积分规则

小黑屋|手机版|矿石收音机 ( 蒙ICP备05000029号-1 )

蒙公网安备 15040402000005号

GMT+8, 2025-4-30 10:43

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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