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

Documentation / Mathematica / The Mathematica Book / Mathematica Reference Guide / Listing of C Functions in the MathLink Library /

Introduction

Listed here are functions provided in the MathLink Developer Kit.

These functions are declared in the file mathlink.h, which should be included in the source code for any MathLink-compatible program.

Unless you specify #define MLPROTOTYPES 0 before #include "mathlink.h" the functions will be included with standard C prototypes.

The following special types are defined in mathlink.h:

FilledSmallSquare MLINK: a MathLink link object (analogous to LinkObject in Mathematica)

FilledSmallSquare MLMARK: a mark in a MathLink stream

FilledSmallSquare MLENV: MathLink library environment

The following constants are set up when a MathLink template file is processed:

FilledSmallSquare MLINK stdlink: the standard link that connects a program built from MathLink templates to Mathematica

FilledSmallSquare MLENV stdenv: the standard MathLink environment in a program built from MathLink templates

All functions described here are C language functions. They can be called from other languages with appropriate wrappers.

The functions have the following general features:

FilledSmallSquare Those which return int yield a non-zero value if they succeed; otherwise they return 0 and have no effect.

FilledSmallSquare In a program set up using MathLink templates, the link to Mathematica is called stdlink.

FilledSmallSquare Functions which put data to a link do not deallocate memory used to store the data.

FilledSmallSquare Functions which get data from a link may allocate memory to store the data.

FilledSmallSquare Functions which get data from a link will not return until the necessary data becomes available. A yield function can be registered to be called during the wait.