This is documentation for Mathematica 6, which was
based on an earlier version of the Wolfram Language.
View current documentation (Version 11.2)
MathLink C Function

MLGetReal64()

int MLGetReal64(MLINK link, double *x)
gets a double-precision floating-point number from the MathLink connection link and stores it in x.
  • If the data on the link corresponds to a C int, MLGetReal64() will coerce it to a double before storing it in x.
  • If the data on the link corresponds to a number outside the range that can be stored in a C double on your computer system, then MLGetReal64() will fail, and return 0.
  • Arbitrary-precision real numbers are transmitted between MathLink programs as the number sequence generated by RealDigits, typically as an integer array or as a C string of decimal characters. This sequence can be read using MLGetInteger32List() or MLGetString().
  • MLGetReal64() returns 0 in the event of an error, and a nonzero value if the function succeeds.
  • Use MLError() to retrieve the error code if MLGetReal64() fails.
  • MLGetReal64() is declared in the MathLink header file mathlink.h.
#include "mathlink.h"

/* read a double-precision floating-point number from a link */

void f(MLINK lp)
{
    double r;

    if(! MLGetReal64(lp, &r))
        { /* unable to read the floating-point number from lp */ }

    /* ... */
}