Ошибка компоновщика с помощью или инструментов и STS / Eclipse

Учитывая, что (x! = x) не всегда гарантируется для NaN (например, если используется опция -ffast-math), я использовал:

#define IS_NAN(x) (((x) < 0) == ((x) >= 0))

Номера не могут быть как & lt; 0 и> = 0, так что эта проверка проверяется только тогда, если число не меньше или равно нулю или равно нулю. Это вообще не номер или NaN.

Вы также можете использовать это, если хотите:

#define IS_NAN(x) (!((x)<0) && !((x)>=0)

Я не уверен, как это влияет на -ffast- математика, хотя, поэтому ваш пробег может измениться.

0
задан Raduan Santos 16 January 2019 в 15:32
поделиться