何谓隐式类型转换?其转换规则如何?

如题所述

数值的类型转换分为强制性转换(我们人为的转换)和自动转换(也就是隐式转换,编译器自己进行的转换,不经我们的同意)
要想知道什么是隐式转换,那你首先得清楚数值共可以分为几个类型,其中包括char=short<int<unsingned<long=float<double.他们的精确度是随之增加的,他们能表示数值的范围也是越来越大的。如果同类型的数值相操作(加减乘除等),是不会发生类型转换,如果是不同类型数值相操作,比如说short型数值和int型数值相操作,那么小取值范围的类型(short)会先隐式转换为取值范围大的类型(int),然后再进行数值间的操作,得出来的结果也是int型。
我说道这里不知道你能否看懂。建议你看看谭浩强的《c程序设计》,里面讲的比较详细。
温馨提示:内容为网友见解,仅供参考
第1个回答  2012-10-11
隐式类型转换所谓隐式类型转换就是在编译时由编译程序按照一定规则自动完成,而不需人为干预。因此,在表达式中如果有不同类型的数据参与同一运算时,编译器就在编译时自动按照规定的规则将其转换为相同的数据类型。 C语言规定的转换规则是由低级向高级转换。本回答被网友采纳
第2个回答  2012-10-11
C语言隐式类型转换规则: C语言规定,不同类型的数据需要转换成同一类型后才可进行计算。

java中什么是显式类型转换和隐式类型转换?
自动类型转换,也称隐式类型转换,是指不需要书写代码,由系统自动完成的类型转换。由于实际开发中这样的类型转换很多,所以Java语言在设计时,没有为该操作设计语法,而是由JVM自动完成。转换规则 从存储范围小的类型到存储范围大的类型。具体规则为:byte→short(char)→int→long→float→double 也就是说...

显式类型转换和隐式类型转换区别?
一般情况下,数据的类型的转换通常是由编译系统自动进行的,不需要人工干预,所以被称为隐式类型转换。但如果程序要求一定要将某一类型的数据转换为另外一种类型,则可以利用强制类型转换运算符进行转换,这种强制转换过程称为显式转换。显示类型转换格式为:(强制的类型名)表达式 用于强行将“表达式”的值...

C语言中,数据类型的隐式转换与显式转换分别是个什么意思?
显式转换,就是强制转换。在被转换的表达式前加(类型),比如:(float)5,就是把5显式转换成float类型。隐式转换,就是不需要加强制转换,系统会自动做这个操作,比如:double k;k=10;10是int型,不需要显式转换,系统自动会把它转为10.0。

数据类型转换分为哪两种
隐式类型转换,也被称为自动类型转换,是编程语言在编译或运行时自动执行的数据类型转换。这种转换通常发生在不同数据类型的值进行运算时,为了确保运算的正确执行,编译器或解释器会自动将一种数据类型转换为另一种数据类型。例如,在Python中,如果一个整数和一个浮点数进行加法运算,整数会被隐式地转换...

C语言中不同数据类型的数据在运算时采用的规则有哪些?
隐式转换指的是默认做的一些转换式,比如整形和实型做混合运算(这里我说的运算是合法的运算,不会是取余这样对操作数有数据类型要求的运算),得到的结果是自动由精度低的或占位数低的数据类型向高的数据类型做转换,也就是上述问题得到的结果是实型。显示转换:指的是使用强制类型转换运算符来进行...

c语言,数据类型转换!又要掉头发了!
1. int -> unsigned int -> long -> unsigned long -> long long -> unsigned long long -> float -> double -> long double 请注意,转换规则可能因机器架构的不同而有所差异。隐式转换可能导致数据丢失或精度降低,尤其是将有符号类型转换为无符号类型时。为了展示隐式转换的效果,下面的...

显式转换是什么意思隐式转换又是什么意思?
显式专换是你定义让这个值类型转换成你要用的值类型,例,你定义int i=5,想把他专换成char类型,就用显式转换(char)i。隐式转换是系统跟据程序需要而自动转换的,不需要定义,但并不是所有值类型都可以互相转换,所以有了显式转换。例,int i=5; char j='a'; int n=i+j;因char可以隐...

隐式转换的规则
在进行隐式转换时,没有指定将其转换为 number 类型时,将其转换为那么大的 number 类型的值显然没有多大意义。(不管是在+运算符还是==运算符)还不如转换为字符串格式的日期,所以默认 Date 类型会优先进行 toString 转换。故有以上的规则:PreferredType 没有设置时, Date 类型的对象, Preferred...

什么是隐式转换和显式转换?
当直接将一种类型赋值给另外一个类型,就是隐式转换。系统会在编译时候进行判断,能否进行隐式转换,如果提示出错,就说明无法隐式转换,如果没有提示,这个隐式转换是成立的,并且不会出现错误;接下来就是利用上面三种方式进行转换了。 当采取显式转换时,利用诸如(int)a,convert和parse方法吧。这时...

javascript中!!是什么意思?
简单来说,'!!' 操作符会自动执行隐式类型转换,然后返回结果的布尔值。不过,隐式类型转换的规则复杂多变,且常有意外情况发生,给代码编写带来不少困扰。因此,尽量避免使用隐式类型转换,以维护代码的稳定性和可读性。如果你对 JavaScript 的细节感兴趣,尤其是那些让人头疼的部分,建议阅读相关书籍或...

相似回答