[ZLG-ARM] K RV最新版本中,#define LED (1<<25),提示超出整形范围

[复制链接]
 楼主| 汽车电子 发表于 2007-12-7 11:39 | 显示全部楼层 |阅读模式
&nbsp;&nbsp;&nbsp;虽然不影响结果,但觉得不爽。是由于默认的预定义是有符号的,在哪里可以修改成无符号?&nbsp;char型就找到,但找不到int型在哪里设置。<br /><br />&nbsp;&nbsp;&nbsp;哪位大虾解决了?&nbsp;指教指教。
computer00 发表于 2007-12-7 12:30 | 显示全部楼层

自己强制一下呀, 1U<<25

  
xxqarm 发表于 2007-12-7 12:31 | 显示全部楼层

没用过K RV最新版,这样试试

#define&nbsp;LED&nbsp;&nbsp;((unsigned&nbsp;int)1&lt&lt25)
LPC900 发表于 2007-12-7 12:51 | 显示全部楼层

原来的定义就不规范

为了获得最大程度的兼容性,同时简洁又不影响效率,应该这样定义:<br /><br />#define&nbsp;&nbsp;LED&nbsp;&nbsp;&nbsp;&nbsp;(1UL&lt&lt25)<br /><br />后缀“UL”表示该数据是“unsigned&nbsp;long”型。
hqgboy 发表于 2007-12-7 13:42 | 显示全部楼层

#define LED ((unsigned int)1<<25)

  
 楼主| 汽车电子 发表于 2007-12-7 14:35 | 显示全部楼层

对呀,竟然忘了UL,L就用过很多

&nbsp;&nbsp;谢谢!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

366

主题

2058

帖子

5

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

366

主题

2058

帖子

5

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