### complex16* type in C++

Posted:

**Sat Oct 22, 2005 12:07 pm**Hello,

I'm calling LAPACK/BLAS from C++ and was wondering what the complex16* type is in C++. I guess it is a built in type of Fortran, which consists of two Real-8 types.

From various examples on the web, it seems like it is just a double type or twice the size:

complex16* = double with double[0]=real part, double[1]=imaginary part. I have all

the other routines working because a double is obviously just a double in C++.

For example, the function zdotu_(int *N, complex16* X, int *incx, complex16* Y, int *incy),

[which takes the dot product of time complex numbers]

is supposed to return a type 'Complex16*', which I guess is a type in Fortran.

Does anybody know what this type is in C++? Is it a structure with 2 double pointers

with names 're' and 'im' or is it just a double[2]. From here, I would really like to know how to store the value of zdotu_. Do you write something like:

double *z;

z=zdotu_(..); ?

Gratefully appreciative for your time,

I'm calling LAPACK/BLAS from C++ and was wondering what the complex16* type is in C++. I guess it is a built in type of Fortran, which consists of two Real-8 types.

From various examples on the web, it seems like it is just a double type or twice the size:

complex16* = double with double[0]=real part, double[1]=imaginary part. I have all

the other routines working because a double is obviously just a double in C++.

For example, the function zdotu_(int *N, complex16* X, int *incx, complex16* Y, int *incy),

[which takes the dot product of time complex numbers]

is supposed to return a type 'Complex16*', which I guess is a type in Fortran.

Does anybody know what this type is in C++? Is it a structure with 2 double pointers

with names 're' and 'im' or is it just a double[2]. From here, I would really like to know how to store the value of zdotu_. Do you write something like:

double *z;

z=zdotu_(..); ?

Gratefully appreciative for your time,