类型转换可能会丢失精度:例如,实型转换为整型会舍去整数部分(并非四舍五入);很大的整型值在转换为实型时,会因采用科学计数法而丢失末位精度。
自动类型转换和强制类型转换都是临时转换,不会改变原变量的数据类型。
赋值类型转换
给变量赋值时,系统会自动把赋值运算符右侧表达式的值转换为与左侧变量相同。
实型→整型:舍去小数部分;
整型→实型:增加小数部分,小数部分为0;
字符型→整型:由于字符型占用1个字节,所以会放在整型的低8位,对于无符号整型变量高位补0。
自动类型转换

当运算符两边的运算对象类型不同时,系统会自动将占用字节数低的数据类型转换为占用字节数低的数据类型,使运算符两边的类型相同。
强制类型转换
(类型说明符)(表达式)
(int)3.14 //把3.14转换为整型
类型转换在编程中常见,包括自动转换和强制转换。自动转换发生在赋值时,如实型转整型会舍去小数,字符型转整型则只取低8位。强制转换如(int)3.14将浮点数转换为整数。转换可能涉及精度丢失,特别是从大整型到实型时。
1378

被折叠的 条评论
为什么被折叠?



