This is machine translation

Translated by Microsoft
Mouseover text to see original. Click the button below to return to the English version of the page.

Note: This page has been translated by MathWorks. Click here to see
To view all translated materials including this page, select Country from the country navigator on the bottom of this page.

mxCopyPtrToComplex16 (Fortran)

COMPLEX*16 values from pointer array to Fortran array

The function signature for mxCopyPtrToComplex16 is different in the Interleaved Complex API.

Fortran Syntax

Interleaved complex API

#include "fintrf.h"
integer*4 mxCopyPtrToComplex16(pd, y, n)
mwPointer pd
complex*16 y(n)
mwSize n

Separate complex API

#include "fintrf.h"
subroutine mxCopyPtrToComplex16(pr, pi, y, n)
mwPointer pr, pi
complex*16 y(n)
mwSize n

Input Arguments


Pointer to a complex double-precision MATLAB® array


Pointer to the real data of a double-precision MATLAB array


Pointer to the imaginary data of a double-precision MATLAB array


COMPLEX*16 Fortran array


Number of elements to copy

Output Arguments


Function status, returned as interger*4 when using the interleaved complex API.


mxCopyPtrToComplex16 copies n COMPLEX*16 values from the specified MATLAB arrays into the Fortran COMPLEX*16 array y. The MATLAB arrays are pointed to by:

  • pd when using the interleaved complex API, built with the -R2018a option.

  • pr and pi when using the separate complex API, built with the -R2017b option.

Sets up standard Fortran arrays for passing as arguments to or from the computation routine of a MEX-file. Use this subroutine with Fortran compilers that do not support the %VAL construct.


See these examples in matlabroot/extern/examples/eng_mat:

Introduced before R2006a