C语言之类型转换

类型转换
例题分析:温度的表示分为华氏温度和摄氏温度,C = 5 / 9 * (F - 32),其中F表示华氏温度,C表示摄氏温度,当F = 100时,C等于多少?

#include 

int main(int argc,char *argv[])
{
	float f = 100,c = 0;
	c = (float)5 / 9 * (f - 32);//c = 5.0 / 9 * (f - 32);
	/*
	说明:假如没有加float,则是c = 0.000000 ,与题意不符。一定要谨慎这类题型!
	*/
	printf("c = %f\n",c);
	
	return 0;
}

(1)显式类型转换 — 期望被转换的类型是可见的
格式:(期望被转换的类型) <被转换的表达式或变量或常量>
注:"()"不能省略。
(2)隐式类型转换 — 被转换的类型是不可见的
①符号转换
有符号数和无符号数运算时,会将有符号数转换为无符号数。
②字节转换
低字节向高字节的转换是没有影响的,但高字节向低字节转换有可能会出现数据错误。
③精度转换
低精度向高精度的转换是没有影响的,但高精度向低精度转换会出现精度的丢失。
注:在进行数据运算时,一定要注意数据类型产生的影响,一般都会出现低字节向高字节转换,低精度向高精度转换等。

你可能感兴趣的:(c语言)