Bagikan melalui


fdim, , fdimffdiml

Menentukan perbedaan positif antara nilai pertama dan kedua.

Sintaks

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

Parameter

x
Nilai pertama.

y
Nilai kedua.

Nilai hasil

Mengembalikan perbedaan positif antara x dan y:

Nilai hasil Skenario
x-y Jika x>y
0 jika x<= y

Jika tidak, dapat mengembalikan salah satu kesalahan berikut:

Masalah Tampilkan
Kesalahan rentang luapan +HUGE_VAL, +HUGE_VALF, atau +HUGE_VALL
Kesalahan rentang aliran bawah nilai yang benar (setelah pembulatan)
x atau y adalah NaN NaN

Kesalahan dilaporkan seperti yang ditentukan dalam _matherr.

Keterangan

Karena C++ memungkinkan kelebihan beban, Anda dapat memanggil kelebihan beban fdim yang mengambil dan mengembalikan float dan long double jenis. Dalam program C, kecuali Anda menggunakan <makro tgmath.h> untuk memanggil fungsi ini, fdim selalu mengambil dan mengembalikan double.

Jika Anda menggunakan <makro tgmath.h>fdim() , jenis argumen menentukan versi fungsi mana yang dipilih. Lihat Matematika generik jenis untuk detailnya.

Kecuali untuk penanganan NaN, fungsi ini setara dengan fmax(x - y, 0).

Persyaratan

Fungsi Header C Header C++
fdim, , fdimffdiml <matematika.h> <cmath>
fdim makro <tgmath.h>

Untuk informasi kompatibilitas selengkapnya, lihat Kompatibilitas.

Lihat juga

Referensi fungsi alfabet
fmax, , fmaxffmaxl
abs, , labsllabs,_abs64