【请教】double型数值的范围问题
在程序里有这样的表达式
double t=sqrt(double (x*x+y*y) );
其中x与y均为int类型数,x=77504,y=50910
计算得出的结果却是t=2960.3249821598979
请教高手这是怎么回事?如何解决?double型的数据好像并没有越界的吧?
谢谢~
[解决办法]
x*x+y*y 被作为整数参加运算 ...
酱紫 : double t =sqrt( (double)x*x + (double)y*y ) ....