首页 > C语言中int a=46. 如何理解?

C语言中int a=46. 如何理解?

最近看到教材上这样写:

int a=46.

我想问一下如何理解该用法,是不是将float型隐式转换成int型?
同时呢,这种用法有相应的应用么?


这个是把一个double的值隐式转为int,没见过什么特别需要记住的应用,它就是用来做转换,什么时候你需要了就用下


这种转换应用不多...反而有点不简化。如:

int i
...
i = i + 9.8

按照隐式处理方式,在处理 i=i+9.8 时,首先 i 转换为 double 型,然后进行相加,结果为 double 型,再将 double 型转换为整型赋给 i。

int i
...
i = i + (int)9.8

这时直接将9.8转换成整型,然后与 i 相加,再把结果赋给 i。这样可把二次转换简化为一次转换。

数据类型转换包括隐式类型转换显式(强制)类型转换。隐式类型转换就是在编译时由编译程序按照一定规则自动完成,而不需人为干预。因此,在表达式中如果有不同类型的数据参与同一运算时,编译器就在编译时自动按照规定的规则将其转换为相同的数据类型。具体隐式转换规则还是需要看标准文档。btw,float么,好像是double...
参考:http://www.nowamagic.net/librarys/ved...

【热门文章】
【热门文章】