标题:预处理问题
只看楼主
shengwumozhe
Rank: 1
等 级:新手上路
帖 子:54
专家分:0
注 册:2006-10-24
 问题点数:0 回复次数:5 
预处理问题

假如我想用一个表达式去表示一年中有多少秒,我可能会用到一个预处理命令:
#define SECONDS_PER_YEAR (60 * 60 * 24 * 365 )
可是显然60*60*24*365会造成范围溢出,这里怎样才能在预处理时将SECONDS_PER_YEAR设置成unsigned long型?
可否提供下格式?谢谢

搜索更多相关主题的帖子: 预处理 
2007-01-09 20:02
一二三四五
Rank: 3Rank: 3
等 级:新手上路
威 望:8
帖 子:856
专家分:0
注 册:2006-11-13
得分:0 
预处理还是少用吧,定义一个常量就可以了

hey,di va la
2007-01-10 09:34
lzz4438253
Rank: 1
等 级:新手上路
帖 子:109
专家分:0
注 册:2007-1-4
得分:0 
const

2007-01-10 10:33
shengwumozhe
Rank: 1
等 级:新手上路
帖 子:54
专家分:0
注 册:2006-10-24
得分:0 
如题,希望知道的回复我,非常感谢.
我想知道用预处理怎样完成.

自信,微笑^_^
2007-01-10 14:11
yuyunliuhen
Rank: 6Rank: 6
等 级:贵宾
威 望:20
帖 子:1435
专家分:0
注 册:2005-12-12
得分:0 

为什么不用:
const unsigned long SECONDS_PER_YEAR = 60 * 60 * 24 * 365;
呢?

宏天生是一个不讲究类型,不讲究作用域的东西。
溢出还算好的,有时候整出来的事情你想都想不到。


Go confidently in the  directions of your dreams,live the life you have imagined!Just do it!
It is no use learning without thinking!
2007-01-10 19:02
song4
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:38
帖 子:1533
专家分:4
注 册:2006-3-25
得分:0 
小博,你是否听过"听妈妈的话吧,晚点谈恋爱吧"
你那个很不讲究

嵌入式 ARM 单片机 驱动 RT操作系统 J2ME LINUX  Symbian C C++ 数据结构 JAVA Oracle 设计模式 软件工程 JSP
2007-01-13 12:03



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-115128-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.090610 second(s), 7 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved