Главная    Разработка ПО    функции языка Си

Описание функций языка Си

" F "

fabs,fabsf,fabsl 

fclose 

fcloseall 

fdim,fdimf,fdiml 

fdopen 

fegetround 

feof 

ferror 

fesetround 

fgetc 

fgets 

fileno 

finite,finitef,finitel 

fflush 

floor,floorf,floorl 

fma,fmaf,fmal 

fmax,fmaxf,fmaxl 

fmin,fminf,fminl 

fmod,fmodf,fmodl 

fopen 

fpclassify 

fputc 

fputs 

freopen 

frexp,frexpf,frexpl 

fseek 

fseeko 

ftell 

ftello 

All | _ | A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z

fpclassify – определение типа числа с плавающей точкой.

Синтаксис:

#include < math.h >
int fpclassify (x);

Аргументы:

x – проверяемое число с плавающей точкой.

Возвращаемое значение:

FP_NAN (0), если проверяемый аргумент не число.

FP_INFINITE (1), если проверяемый аргумент плюс или минус бесконечность.

FP_ZERO (2), если проверяемый аргумент ноль.

FP_SUBNORMAL (3), если проверяемый аргумент ненормализованное число.

FP_NORMAL (4), если проверяемый аргумент конечное, нормализованное число, отличное от нуля.

Описание:

Макрос fpclassify классифицирует аргумент, выраженный числом с плавающей точкой любого типа (float, double, long double), позволяя отнести аргумент к одной из пяти категорий:

  • не число
  • плюс или минус бесконечность
  • ноль
  • ненормализованное число
  • конечное, нормализованное число не равное нулю.

Макрос fpclassify объединяет в себе возможности макросов isfinite, isinf, isnan, isnormal.

Пример:

В примере проверяется тип числа с плавающей точкой с помощью макроса fpclassify и результат выводится на консоль.


#include < stdio.h >  //Для puts
#include < math.h >   //Для fpclassify

int main (void)
{    
   //Классифицируемый аргумент.
   double arg = INFINITY;
   // Переменная для сохранения результата классификации
   int rez=-1;

   // Классификация аргумента
   rez = fpclassify (arg);

   // Вывод результата классификации на экран
   switch (rez)
   {
      case FP_NAN:
         puts (“Аргумент – не число”);
      break;

      case FP_INFINITE:
         puts (“Аргумент – плюс или минус бесконечность”);
      break;

      case FP_ZERO:
         puts (“Аргумент – ноль ”);
      break;

      case FP_SUBNORMAL:
         puts (“Аргумент – ненормализованное число ”);
      break;

      case FP_NORMAL:
         puts (“Аргумент – конечное, нормализованное число не равное нулю.”);
      break;

      default: break;
   }

   return 0;
}

Результат:

Аргумент – плюс или минус бесконечность.



Смотри так же:

Функции:
finite, finitef, finitel
isinf, isinff, isinfl
isnan,isnanf,isnanl

Макросы:
isfinite
isinf
isnan
isnormal
isunordered
fpclassify


Яндекс.Метрика

Рейтинг@Mail.ru