就是 数字100 一百.
U 表示 unsigned ——无符号.
L 表示 long—— 长整数.
后缀大小写都可以, 可以单独使用(100U), 也可以组合使用(100UL)
除了这两个之外, 还有一个后缀是F, 表示float, 但是F不可以和U组合, 因为浮点数没有unsigned
这些后缀的作用是指明数据类型.
因为单独写100程序默认的类型是 int, 加上后缀就变成了unsigned long
同样的 1.5这样浮点数, 默认类型是double(双精度浮点数), 加上f指明为float(单精度).
指明类型通常用在函数参数匹配上, 尤其是多个重载的时候.
比如说两个函数.
void fun(int);
void fun(float);
你这样调用 fun(0.5);
你可能觉得应该调用后面那个函数, 因为0.5是个浮点数而不是整数.
但实际上这个调用在语法标准上是有歧义的.
因为0.5默认是double类型, 而double转换为int和float的优先级是一样!
所以加上后缀f, 像fun(0.5F), 这样就指明调用第二个函数. 避免导致歧义.
----对此表示怀疑,能在一个文件中,定义两个名称一样的函数?
试了一下,答案是不行的,会报错(软件是MDK-ARM Professional Version:5.11.0.0)
error: #247: function "某某某" has already been defined