## COMPLEX Convert to 32-bit Complex Floating Point

Section: Type Conversion Functions

### Usage

Converts the argument to a 32-bit complex floating point number. The syntax for its use is

       y = complex(x)

where `x` is an `n`-dimensional numerical array. Conversion follows the general C rules. Note that both `NaN` and `Inf` in the real and imaginary parts are both preserved under type conversion.

### Example

The following piece of code demonstrates several uses of `complex`. First, we convert from an integer (the argument is an integer because no decimal is present):

    --> complex(200)

    ans =

     2.0000e+00 +0.0000e+00i

In the next example, a double precision argument is passed in (the presence of a decimal without the `f` suffix implies double precision).

    --> complex(400.0)

    ans =

     4.0000e+00 +0.0000e+00i

In the next example, a dcomplex argument is passed in.

    --> complex(3.0+4.0*i)

    ans =

        3.0000 +  4.0000i

In the next example, a string argument is passed in. The string argument is converted into an integer array corresponding to the ASCII values of each character.

    --> complex('he')

    ans =

       1.0e+02 *

        1.0400 +  0.0000i    1.0100 +  0.0000i

In the next example, the `NaN` argument is converted.

    --> complex(nan)

    ans =

           nan +  0.0000i

In the last example, a cell-array is passed in. For cell-arrays and structure arrays, the result is an error.

    --> complex({4})
    Error: Cannot convert cell-arrays to any other type.