加入收藏 | 设为首页 | 会员中心 | 我要投稿 滁州站长网 (https://www.0550zz.com/)- 智能边缘云、设备管理、微服务引擎、研发安全、云防火墙!
当前位置: 首页 > 运营中心 > 网站设计 > 教程 > 正文

C 语言类型转换类型

发布时间:2023-12-23 00:28:31 所属栏目:教程 来源:DaWei
导读: C 语言类型转换
我们在前面学习了 C 语言的数据类型,那么变量在参与运算的时候类型是始终如一不变的吗?

1. 隐式类型转换
C 语言是强类型语言,也就是说不同类型的数据之间是不能进行
C 语言类型转换
我们在前面学习了 C 语言的数据类型,那么变量在参与运算的时候类型是始终如一不变的吗?

1. 隐式类型转换
C 语言是强类型语言,也就是说不同类型的数据之间是不能进行运算的。必须保持一致的类型才能进行运算。也就是说在这个不同数据类型的计算过程中,C 语言自动进行了一次类型转换,使得两个变量的数据类型一致,才能进行相关的计算。这种自动的转换,也称之为隐式类型转换。

从前面提及的例子还可以看出,我们定义的数据类型,在不同的类型的数据运算结束后,并没有发生改变,也就是数据类型保持着我们最开始定义时候的类型。这时会发生丢弃精度的事情,也就是上面例子中小数点后面的数值就会消失。

下面的表格就展示了类型转换的规律,当在计算过程中,数值类型不一致的时候,就会发生自动的类型转换,转换的类型是将表格中处于下方的较低优先级的数据类型,向表格上方的较高优先级的数据类型进行转换。

级别    数据类型
1    long double
2    double
3    float
4    unsigned long long
5    long long
6    unsigned long
7    long
8    unsigned int
9    int
10    char short int
根据这个表格我们就可以看出之前的转换中,int 与 float 类型进行计算,编译器会自动将 int 类型转换为 float 类型进行计算。从而使得运算在相同的数据类型间进行。

2. 显式类型转换
如果说隐式类型转换是编译器自动进行的类型转换,那么显式类型转换,则是我们人为的进行数据类型的转换,这里可以理解为是一种强制的类型的转换,这种转换将不再遵守上面的转换规则,而是按照我们人为的标明的类型进行转换。

就是在我们需要指定类型的变量前加上数据类型,并用圆括号包裹。例如: (int)a, (float)b, (long)c 等。

 

(编辑:滁州站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章