我有一个问题。 我想知道通过添加“(int)”(或任何类型的数据类型),这意味着我们正在将其转换为int。
double lk = 45.0;
int nm = (int) lk; //not tested though
无论如何,对此有术语吗?
答案 0 :(得分:1)
C in a Nutshell (chapter 4)解释了主题:
在C中,不同类型的操作数可以在一个操作中组合。 [...]当操作数具有不同类型时,编译器将尝试 在执行操作之前将它们转换为统一类型。
这称为隐式类型转换。
您还可以使用以下方式将值从一种类型显式转换为另一种类型 演员[...]。您应该始终使用强制转换运算符 只要有可能丢失信息,例如 例如,从
int
到unsigned int
的转换。显式强制转换避免 编译器警告,并标出程序的类型转换 对于其他程序员。
这被称为显式类型转换,并通过强制转换运算符(type_name) expression
现在已经指出了,结果与您的示例相同。
Here is另一篇有用的文章。