FreeMat

- Main Page
- Related Pages

INT64 Convert to Signed 64-bit Integer

Section: Type Conversion Functions

# Usage

Converts the argument to an signed 64-bit Integer. The syntax for its use is

       y = int64(x)

where `x` is an `n`-dimensional numerical array. Conversion follows the saturation rules (e.g., if `x` is outside the normal range for a signed 64-bit integer of `[-2^63+1,2^63-1]`, it is truncated to that range). Note that both `NaN` and `Inf` both map to 0.

# Example

The following piece of code demonstrates several uses of `int64`. First, the routine uses

    --> int64(100)

    ans =
     100

    --> int64(-100)

    ans =
     -100

In the next example, an integer outside the range of the type is passed in. The result is truncated to the range of the data type.

    --> int64(40e9)

    ans =
     40000000000

In the next example, a positive double precision argument is passed in. The result is the signed integer that is closest to the argument.

    --> int64(pi)

    ans =
     3

In the next example, a complex argument is passed in. The result is the complex signed integer that is closest to the argument.

    --> int64(5+2*i)

    ans =
       5.0000 +  2.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.

    --> int64('helo')

    ans =
     104 101 108 111

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

    --> int64({4})
    Error: Cannot perform type conversions with this type