首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

写个宏定义一年有几多秒

2012-10-18 
写个宏定义一年有多少秒忽略闰年#define S (365*24*3600)这么写哪里错了呢[解决办法]#define SECS_PER_YEA

写个宏定义一年有多少秒
忽略闰年
#define S (365*24*3600)


这么写哪里错了呢


[解决办法]
#define SECS_PER_YEAR (365*24*3600)UL这种用法
表面上UL应该是指unsigned long的意思,也即SECS_PER_YEAR存储空间应该是个unsigned long类型。
整型存储不下(365*24*3600)所以用长整型.
有此种用法:#define AAA 1024UL
#define BBB 1024UL
#dfine CCC AAA * BBB * 1UL
[解决办法]
#define S (60 * 60 * 24 * 365)UL
都是推荐这样写的,
一是这个宏的可读性,
二是加上UL长整型,保证这个值不会越位溢出。
这是面试时,考的细节。
[解决办法]

探讨
#define S (60 * 60 * 24 * 365)UL
都是推荐这样写的,
一是这个宏的可读性,
二是加上UL长整型,保证这个值不会越位溢出。
这是面试时,考的细节。

[解决办法]
探讨
#define SECS_PER_YEAR (365*24*3600)UL
这个在VC下面调试部通,编译不通过

热点排行