Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Menghitung eksponensial.
Sintaks
double exp(
double x
);
float exp(
float x
); // C++ only
long double exp(
long double x
); // C++ only
float expf(
float x
);
long double expl(
long double x
);
#define exp(z) // Requires C11 or later
Parameter
x
Nilai floating-point untuk mengeksponentiasi basis logaritma alami e by.
Nilai hasil
Fungsi exp mengembalikan nilai eksponensial dari parameter floating-point, , xjika berhasil. Artinya, hasilnya adalah ex, di mana e adalah dasar logaritma alami. Saat overflow, fungsi mengembalikan INF (infinity) dan pada underflow, exp mengembalikan 0.
| Input | Pengecualian SEH | Pengecualian _matherr |
|---|---|---|
| ± NaN Tenang, tidak ditentukan | Tidak | _DOMAIN |
| ± Infinity | INVALID |
_DOMAIN |
x ≥ 7.097827e+002 |
INEXACT+OVERFLOW |
OVERFLOW |
x ≤ -7.083964e+002 |
INEXACT+UNDERFLOW |
UNDERFLOW |
Fungsi ini exp memiliki implementasi yang menggunakan Streaming SIMD Extensions 2 (SSE2). Lihat _set_SSE2_enable untuk informasi dan batasan penggunaan implementasi SSE2.
Keterangan
C++ memungkinkan kelebihan beban, sehingga Anda dapat memanggil kelebihan beban exp yang mengambil float argumen atau long double . Dalam program C, kecuali Anda menggunakan <tgmath.h> makro untuk memanggil fungsi ini, exp selalu mengambil dan mengembalikan double.
Jika Anda menggunakan exp makro dari <tgmath.h>, jenis argumen menentukan versi fungsi mana yang dipilih. Lihat Matematika generik jenis untuk detailnya.
Secara default, status global fungsi ini dicakup ke aplikasi. Untuk mengubah perilaku ini, lihat Status global di CRT.
Persyaratan
| Fungsi | Header C yang diperlukan | Header C++ yang diperlukan |
|---|---|---|
exp, , expfexpl |
<math.h> |
<cmath> atau <math.h> |
exp makro |
<tgmath.h> |
Untuk informasi kompatibilitas selengkapnya, lihat Kompatibilitas.
Contoh
// crt_exp.c
#include <math.h>
#include <stdio.h>
int main( void )
{
double x = 2.302585093, y;
y = exp( x );
printf( "exp( %f ) = %f\n", x, y );
}
exp( 2.302585 ) = 10.000000
Lihat juga
Dukungan matematika dan titik mengambang
log, , logflog10,log10f
_CIexp