Share via


ilogb, ilogbf, ilogbl

Mengambil bilangan bulat yang mewakili eksponen base-2 yang tidak bias dari nilai yang ditentukan.

Sintaks

int ilogb(
   double x
);

int ilogb(
   float x
); //C++ only

int ilogb(
   long double x
); //C++ only

int ilogbf(
   float x
);

int ilogbl(
   long double x
);

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

Parameter

x
Nilai yang ditentukan.

Nilai hasil

Jika berhasil, fungsi-fungsi ini mengembalikan eksponen base-2 sebagai xsigned int nilai.

Jika tidak, fungsi mengembalikan salah satu nilai berikut, yang ditentukan dalam <math.h>:

Input Hasil
±0 FP_ILOGB0
± INF, ± NAN, IND FP_ILOGBNAN

Kesalahan dilaporkan seperti yang ditentukan dalam _matherr.

Keterangan

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

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

Memanggil fungsi ini mirip dengan memanggil fungsi yang setara logb , lalu mentransmisikan nilai pengembalian ke int.

Persyaratan

Rutin Header C Header C++
ilogb, ilogbf, ilogbl <matematika.h> <cmath>
ilogb makro <tgmath.h>

Untuk informasi kompatibilitas selengkapnya, lihat Kompatibilitas.

Baca juga

Referensi fungsi alfabet
frexp
logb, logbf, logbl, _logb, _logbf