what does int(x) do?

what does int(x) do?

本文关键字:do does int what      更新时间:2023-10-16

我已经看过这些,在C 代码中似乎是函数的,但我不知道它们在做什么或它们是什么,它们似乎对类型做了类似的事情,但是它们不喜欢看起来像类型,那是什么?

他们看起来像这样: int(x) x是一些数字输入,我一直在网上环顾四周,但我找不到有关它们的任何信息(可能是因为我不知道它们叫什么)。

有帮助吗?

这被称为"功能符号",它是一种显式类型转换的形式("铸造")。C 11,5.2.3:

5.2.3显式类型转换(功能符号)

  1. 简单类型的分类器(7.1.6.2)或键入类别词(14.6),然后是括号表达式列表构造给定表达式列表的指定类型的值。如果表达式列表是单个表达式,则类型转换表达式等效(定义性,并在含义中定义)与相应的铸造表达式(5.4)。如果指定的类型是类类型,则类型应完成。如果表达式列表指定多于单个值,则该类型应为具有适当声明的构造函数(8.5,12.1)的类(x1,x2,...);对于某些发明的临时变量t,结果是t作为prvalue的价值。

int(x)是类型铸造的功能符号。

c 是一种强大的语言。许多转换,特别是暗示对该值的解释的转换,都需要明确的转换,在C 中称为类型铸件。有两个用于通用类型铸造的主要语法: functional 和c类:

这些通用形式的类型铸造的功能足以满足具有基本数据类型的大多数需求。

示例:

double x = 10.3;
int y;
y = int (x);    // functional notation
y = (int) x;    // c-like cast notation 

查看类似C的Casting&功能性铸造?有关更多信息。

这是类型的铸造操作员的替代语法,使其看起来像复制的构造函数语法,因此在copy构造函数的地方在语法上是合适的。int(x)(int)x具有相同的效果。