请问有“#define SECONDS_PER_YEAR (60 * 60 * 24 * 365)UL”
如题
编译不过去,没见过UL可以这样用的啊,高手指教,谢谢
如果有,正确形式应该是怎样的?
[解决办法]
#define SECONDS_PER_YEAR ((unsigned long)(60 * 60 * 24 * 365))
[解决办法]
试试看这样行不:
- C/C++ code
#define SECONDS_PER_YEAR (60UL * 60UL * 24UL * 365UL)
[解决办法]
这种定义还是不足为奇的
在嵌入式程序中经常看到
UL 就是unsigned long 的缩写
编译器一般会编译通过
如果不行的话那可能就是编译器不够“聪明”
因此换成
#define SECONDS_PER_YEAR (60UL * 60UL * 24UL * 365UL)
或者
#define SECONDS_PER_YEAR ((unsigned long)(60 * 60 * 24 * 365))
都是一样的!