#ifndef COMPLEX_H #define COMPLEX_H typedef struct complex *complex; /* create a new complex from real and imaginary parts */ complex complex_new(double re,double im); /* transform a real number t a complex */ complex inject(double x); /* create a copy of z */ complex cclone(complex z); /* delete and recycle memory */ void cdelete(complex); double real_part(complex); double imag_part(complex); complex cadd(complex,complex); complex cmul(complex,complex); double cmodule(complex); #endif /* COMPLEX_H */