什么情况下要加ul

[复制链接]
2237|15
 楼主| langgq 发表于 2012-9-2 21:01 | 显示全部楼层 |阅读模式
什么情况下要加ul?
一直不是很明白
午夜粪车 发表于 2012-9-2 21:02 | 显示全部楼层
整常数缺省类型应该是integer。
huangchui 发表于 2012-9-2 21:06 | 显示全部楼层
缺省是unsigned int,C语言在运行过程中会隐式的类型转换,有时会使程序出现异响不到的结果。
zhanghqi 发表于 2012-9-2 22:02 | 显示全部楼层
可以试试 if(-1<ZERO){...}看看结果。
wyjie 发表于 2012-9-2 22:03 | 显示全部楼层
嗯,如果本意就是integer类型的话,自然不用加ul。
jlyuan 发表于 2012-9-2 22:07 | 显示全部楼层
整常数类型应该是integer,其可正负。
 楼主| langgq 发表于 2012-9-2 22:07 | 显示全部楼层
什么都不加,默认的确是int型
我想知道,在什么情况下必须要加后缀。
yszong 发表于 2012-9-2 22:08 | 显示全部楼层
在想要强制转换成L或UL时加或可能产生溢出的时候加
 楼主| langgq 发表于 2012-9-2 22:09 | 显示全部楼层
是不是变量有数据类型,因为变量在内存里有空间分配。
zhenykun 发表于 2012-9-2 22:10 | 显示全部楼层
整型数据好像也有数据类型,但是整型数据在内存有空间分配吗?
jiajs 发表于 2012-9-2 22:10 | 显示全部楼层
整型数据好像也有数据类型,但是整型数据在内存有空间分配吗?
huangchui 发表于 2012-9-2 22:11 | 显示全部楼层
表达式运算同样需要中间变量(类似一般变量一样,只是不可见而已)。有变量就该有类型附属,而此类型就是根据表达式中的变量和常数的类型来调整的。
 楼主| langgq 发表于 2012-9-2 22:16 | 显示全部楼层
哦,理解了理解了
 楼主| langgq 发表于 2012-9-2 22:16 | 显示全部楼层
结贴了哈
js200300953 发表于 2012-9-3 08:04 | 显示全部楼层
在8位单片机上,int有可能只有16位,
如果有大于32768的数,就会溢出,
这时就要加ul,使类型变为unsigned long,一般有32位的。
huanben 发表于 2012-9-3 11:09 | 显示全部楼层
15# js200300953
UL可以引入一个32位的变量?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

932

主题

8762

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部