Aracılığıyla paylaş


fdim, fdimf, fdiml

birinci ve ikinci değerler arasındaki pozitif farkı belirler.

Sözdizimi

double fdim(
   double x,
   double y
);

float fdim(
   float x,
   float y
); //C++ only

long double fdim(
   long double x,
   long double y
); //C++ only

float fdimf(
   float x,
   float y
);

long double fdiml(
   long double x,
   long double y
);

#define fdim(X) // Requires C11 or higher

Parametreler

x
İlk değer.

y
İkinci değer.

Dönüş değeri

ile yarasındaki x pozitif farkı verir:

Dönüş değeri Senaryo
x-y eğer x>y
0 if x<= y

Aksi takdirde, aşağıdaki hatalardan birini döndürebilir:

Sorun İade
Taşma aralığı hatası +HUGE_VAL, +HUGE_VALF veya +HUGE_VALL
Yetersiz akış aralığı hatası doğru değer (yuvarlamadan sonra)
x veya y NaN NaN

Hatalar içinde _matherrbelirtildiği gibi bildirilir.

Açıklamalar

C++ aşırı yüklemeye izin verdiğinden, bu alma ve dönüş float ile long double türlerinin fdim aşırı yüklemelerini çağırabilirsiniz. C programında, bu işlevi çağırmak için tgmath.h makrosunu <kullanmıyorsanız, fdim her zaman bir doublealır ve döndürür.>

tgmath.h>fdim() makroyu <kullanırsanız, işlevin hangi sürümünün seçili olduğunu bağımsız değişkenin türü belirler. Ayrıntılar için bkz . Tür genel matematik .

NaN işlemesi dışında, bu işlev ile fmax(x - y, 0)eşdeğerdir.

Gereksinimler

İşlev C üst bilgisi C++ üst bilgisi
fdim, fdimf, fdiml <math.h> <cmath>
fdim Makro <tgmath.h>

Daha fazla uyumluluk bilgisi için bkz . Uyumluluk.

Ayrıca bkz.

Alfabetik işlev başvurusu
fmax, fmaxf, fmaxl
abs, labs, llabs, _abs64