![]() |
1
22
如果有一个明确的理由,这个设计决定,它将在C99“理性”文件(C++复制所有这些东西从C逐字而不重新考虑它)。但事实并非如此。这就是关于“f”后缀所说的一切:
在那里 是 不过,这是一个隐含的原因。请注意措辞:“the。。。添加后缀是为了传递带有浮动常量的类型信息 已经 当你得到后缀的时候,它是明确的整数或浮点。后缀只用于类别内的特殊性,它不能将数字从一个类别翻转到另一个类别。这是由实际语法(C99第6.4.4节)支持的 第一 将数值常量定义为整数常量或浮动常量,然后定义 分离 |
![]() |
2
20
假定C++用于浮点常数的语法与C(我认为是真的)相同,我们有:
一些捷径的定义
现在
现在让我们看看识别有效浮点常量的语法:
现在,如果你仔细观察,没有规则可以确定
使用规则2我们可以
使用规则3我们可以
|
![]() |
3
15
编辑:codepad.org(假设g++)给出的错误消息可能更容易理解。”错误:整数常量的后缀“f”无效。“0.f”将起作用,因为0。(或0.0,同样的东西)是十进制常量,要求十进制常量为浮点比要求整数常量为浮点更有意义:) |
![]() |
4
11
因为你需要
|
![]() |
5
3
给你一个“因为”:如果
|
![]() |
6
0
|