Проверка float на NAN и INFINITY на си

Как правильно проверить float на NAN и INFINITY на си? Сделал вот так:

   if(res == NAN || res == -NAN)
   {
   res = 0;
   }
   if(res == INFINITY)
   {
   res = FLT_MAX;
   }
   if(res == -INFINITY)
   {
   res = -FLT_MAX;
   }

где res --- float.


Ответы (1 шт):

Автор решения: Harry

Использовать специальные средства - isnan(x) и isinf(x).

→ Ссылка