warning C4244: '=' : conversion from 'double ' to 'float ', possible loss of data
Double(双精度浮点型)变量存储为 IEEE 64 位(8 个字节)浮点数值的形式
浮点数(floating point number),占用4byte。
你的lixi定义为float, cunqi定义为double。benjin*cunqi*3.15/100.0。任何数和double型数运算得到结果为double。而把这个运算式的结果(double型)赋给lixi(float型),8字节的数赋给4字节的数,会造成数据损失,就好像得到3.1416,只能储存到3.14一样。所以会出这个警告。
一般来说,你这个程序在精度不高的情况下,这个警告无害。
解决办法:数据格式统一。cunqi改为float,或lixi改为double。