float型到double型的转换异常?

float型到double型的转换错误??

写了一个函数

float   Function(float   i)
{
return   1./i;
}

但是编译后警告说:从“double”转换到“float”,可能丢失数据.
请问一下各位大虾这是怎么回事???

------解决方案--------------------
return 1.0f / i;

常数默认是 double 类型的