发布网友 发布时间:2024-10-23 23:28
共1个回答
热心网友 时间:4小时前
float类型的变量在存储时是有误差的!所以,看似ab=0.00000,实际上存储可能是0.000003,当用if(ab==0.00000)判断时,造成变量ab(0.000003)与常量(0.00000)不完全相等。
如果不想出现这种误差,就不要使用float或double型变量,而使用int型变量。
如果必须使用float型变量,在比较相等时,就不要使用==符号,一般用if(abs(ab-0.00000)<1e-6)来判断认为相等。