C语言宏定义中UL的含义

来源:互联网 发布:java 自定义泛型类 编辑:程序博客网 时间:2024/04/30 14:10

1U表示unsigned 无符号,L表示long 长整数后缀大小写都可以可以单独使用(100U)也可以组合使用(100UL)

2F表示float但是F不可以和U组合因为浮点数没有unsigned

3后缀的作用是指明数据类型因为单独写300000程序默认的类型是int加上后缀UL成了unsigned long同样的1.5这样浮点数默认类型是double(双精度浮点数) 加上F指明为float(单精度)

4指明类型通常用在函数参数匹配上尤其重载的时候比如说两个函数
   void fun(int);
   void fun(float);

调用fun(0.5)时,你可能觉得应该调用后面那个函数因为0.5个浮点数而不是整数
但实际上这个调用在语法标准上是有歧义的因为0.5默认是double类型 double转换为intfloat的优先级是一样所以加上后缀ffun(0.5F)这样就指明调用第二个函数避免导致歧义

 


0 0
原创粉丝点击