类型转换

tech2023-11-30  30

类型转换

**自动类型转换(隐式转化) int number =10.8;//number 4个字节 double 8个字节 number只会赋值10 0.8会自动忽略 强制类型转换(显示转换) (需要转换的类型)需要转换的数据 int number =(int)10.8; 注意;无论是隐式转化还是显示转换,只要将一个大类型的数据,转换为小类型的数据,那么久有可能丢失精度 如:int result=10+9.9时结果=10+9=19 //在运算的过程中,其实还做了一次自动类型提升 //算式运算符规定:只有相同类型的数据才可以进行运算 //如果在计算过程中,参与运算的操作数不是同一类型,那么系统会自动将小类型转换为大类型,然后再进行运算。 ** **//int result=10.0+9.9=10.9 //算式运算注意点:参与运算的操作数是什么类型,那么计算出来的结果就是什么类型 int result=1/2;//int int结果int printf(“result=%i\n",result);结果为0 应该换成:double result=1.0/2或者double result=(double)1/2 必定会发生的转换:char,short→int int→double **

最新回复(0)