C/fpclassify

Z Wikibooks, biblioteki wolnych podręczników.

< C

Spis treści

[edytuj] Deklaracja

int fpclassify(floating-type x);
int isfinite  (floating-type x);
int isinf     (floating-type x);
int isnan     (floating-type x);
int isnormal  (floating-type x);
int signbit   (floating-type x);

#define FP_INFINITE  wartość
#define FP_NAN       wartość
#define FP_NORMAL    wartość
#define FP_SUBNORMAL wartość
#define FP_ZERO      wartość

[edytuj] Plik nagłówkowy

math.h

[edytuj] Argumenty

x
wartość do sprawdzenia

[edytuj] Opis

Funkcje (w zasadzie makra) klasyfikują wartość podaną jako argument. Są to makra, które przyjmują jako argumenty zmienne dowolnych typów zmiennoprzecinkowych.

Stałe FP_* określają wartości zwracane przez funkcję fpclassify. Konkretne implementacje mogą definiować własne stałe zaczynające się od FP_ i wielkiej litery określające inne klasyfikacje liczb.

[edytuj] Wartość zwracana

  • fpclassify - klasyfikuje wartość argumentu i zwraca jedną z wartości określonych przez makra FP_INFINITE, FP_NAN, FP_NORMAL, FP_SUBNORMAL, FP_ZERO lub inne makra FP_* zależne od implementacji,
  • isfinite - zwraca wartość niezerową jeżeli argument jest liczbą skończoną,
  • isinf - zwraca wartość niezerową jeżeli argument jest liczbą nieskończoną,
  • isnan - zwraca wartośc niezerową jeżeli argument reprezentuje wartość NaN,
  • isnormal - zwraca wartość niezerową jeżeli argument reprezentuje zwykłą liczbę rzeczywitą,
  • signbit - zwraca wartość niezerową jeżeli znak argumentu jest ujemny.

[edytuj] Przykład użycia

Do zrobienia Do zrobienia:
Dodać jakiś przykład użycia.


[edytuj] Uwagi

Funkcja została dodana do języka w standardzie C99.

W przypadku użycia funkcji matematycznych może zaistnieć konieczność podania odpowiedniego argumentu linkerowi, aby ten połączył program z biblioteką matematyczną. Np. na systemach GNU/Linux jest to -lm.