L'appel d'une fonction C++ est-il une solution pour vous? Le C++ STL a une belle classe complexe et offre également de belles options. Ecrire une fonction en C++ et déclarer "C extern"
extern "C" void myexp(float*, float*);
#include <complex>
using std::complex;
void myexp (float *real, float *img)
{
complex<float> param(*real, *img);
complex<float> result = exp (param);
*real = result.real();
*img = result.imag();
}
Ensuite, vous pouvez appeler la fonction de tout code C vous dépendez (Ansi-C, C99, ...).
#include <stdio.h>
void myexp(float*, float*);
int main(){
float real = 0.0;
float img = -1.0;
myexp(&real, &img);
printf ("e^-i = %f + i* %f\n", real, img);
return 0;
}
e^(- k) = cos (k) - i * sin (k), vous voulez dire. –
oui, mais dans son cas k = 1. En tout cas la forme générale est e^(- ki) = cos (k) -i * sin (k), pas e^(- k) – Jack