|
Archives
D Programming
DD.gnu digitalmars.D digitalmars.D.bugs digitalmars.D.dtl digitalmars.D.dwt digitalmars.D.announce digitalmars.D.learn digitalmars.D.debugger C/C++ Programming
c++c++.announce c++.atl c++.beta c++.chat c++.command-line c++.dos c++.dos.16-bits c++.dos.32-bits c++.idde c++.mfc c++.rtl c++.stl c++.stl.hp c++.stl.port c++.stl.sgi c++.stlsoft c++.windows c++.windows.16-bits c++.windows.32-bits c++.wxwindows digitalmars.empire digitalmars.DMDScript |
c++ - Complex type bug
#include <complex.h>
#include <stdio.h>
void f(long double complex a, long double complex b, long double complex
c, long double complex d)
{
long double complex a_, b_, u, v;
//a_ = conjl(a);
//b_ = conjl(b);
a_ = creall(a) - I*cimagl(a);
b_ = creall(b) - I*cimagl(b);
u = (d - c)*(a_*b - a*b_);
v = (a_*b - a*b_)*(d - c);
printf("u = (%Lg,\t%Lg)\n", creall(u), cimagl(u));
printf("v = (%Lg,\t%Lg)\n", creall(v), cimagl(v));
}
int main(void){
f(410.891l + 291.848l*I,
476.607l + 294.149l*I,
327.0l + 360.0l*I,
439.0l + 192.0l*I);
return 0;
}
dmc cbug.c -o & cbug
u = (-nan, -nan)
v = (-6.1265e+06, -4.08433e+06)
DMC v8.47
Brian
Feb 03 2006
|