比较判断R-1-12-3强制
禁止浮点数相等比较
应该判断精度误差范围。
浮点数相等比较
test.c
1void foo(float x, float y)2{3 int is_equal = x == y;禁止浮点数相等比较 [gjb8114-r-1-12-3]4 int is_not_equal = x != y;禁止浮点数相等比较 [gjb8114-r-1-12-3]5 int is_zero = x == 0.0;禁止浮点数相等比较 [gjb8114-r-1-12-3]6}
浮点数范围比较
test.c
1#include <math.h>23void foo(float x, float y)4{5 float error = 1e-6;6 int is_equal = fabs(x - y) < error;7 int is_not_equal = fabs(x - y) >= error;8 int is_zero = fabs(x) < 1e-6;9}