标签: c++
在查看朋友项目中的一些代码时,我最近看到的语法看起来像这样。
#include <iostream> int main(){ std::cout<< int(32.5/5) << std::endl; }
当你运行上面的代码时,你得到6,如果使用int函数就像一个强制转换,这是期望值。
6
int
但是,我以前从未见过这种语法,我在网上找不到它的文档。我还做了一个实验,发现这种语法在C中无效。
C
有人可以通过文档参考解释这种语法的含义吗?
答案 0 :(得分:9)
这不是构造函数调用或“函数”。没有“int函数”。
这是功能强制转换符号; it's just a cast
与(int)(32.5/5)相同(在这种特殊情况下)。
(int)(32.5/5)
而且,不,C没有它。