早教吧 育儿知识 作业答案 考试题库 百科 知识分享

提示:warningC4244:'argument':conversionfrom'double'to'float',possiblelossofdata下面是出错的那段函数:doubleXsatPH(floatp,floatH)//饱和蒸气干度计算(已知压力、焓){doubleh,h1,h2,t,x;x=0.5;loop:t=TempS

题目详情
提示:
warning C4244:'argument' :conversion from 'double' to 'float',possible loss of data
下面是出错的那段函数:
double XsatPH(float p,float H) //饱和蒸气干度 计算(已知压力、焓)
{ double h,h1,h2,t,x;
x = 0.5;
loop:
t = TempSatur(p);
h2 = EnthSteamPT(p,t); 出错的地方
h1 = EnthWaterPT(p,t);
h = (1.-x)*h1 + x*h2;
if( fabs((h-H)/H) > 0.0001 )
{ x = x * H/h;
goto loop;
}
else
return (x);
}
EnthSteamPT(p,t)在程序中是double EnthSteamPT(float p,float t)这样定义的.
我不知道怎么把那个出错的地方进行强制转换
▼优质解答
答案和解析
t是定义成double的,但EnthSteamPT(p,t)接受的是float.
或者直接把EnthSteamPT(p,t); 定义成
double EnthSteamPT(double p,double t);
或者不理会这个Warning,毕竟影响不大.