C/C++中数字后缀

来源:互联网 发布:淘宝疯狂聚便宜 编辑:程序博客网 时间:2024/05/16 01:54

当想说明一个数字常量的类型时可以在数字后面加字母,比如

123456UL

指明123是unsigned long型的


#define SECONDS_PER_YEAR (365*24*60*60)UL

上面的写法在定义这个宏的时候没有问题,不过在程序里想使用这个宏就有问题了,比如

unsigned long a = SECONDS_PER_YEAR;

就会产生编译错误,问题出在后缀UL上,如果把UL紧跟到60后面就不会报错,如下

 

#define SECONDS_PER_YEAR (365*24*60*60UL)

另外, 下面的4个表示方法都是相同的,

#define SECONDS_PER_YEAR (365*24*60*60UL)#define SECONDS_PER_YEAR (365*24*60*60LU)#define SECONDS_PER_YEAR (365*24*60*60ul)#define SECONDS_PER_YEAR (365*24*60*60lu)


0 0