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

mathlink.h

mathlink.h
MathLink header file.
  • MathLink C 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 MathLink functions will be included with standard C prototypes.
  • The following special types are defined in mathlink.h:
MLINKa MathLink link object (analogous to LinkObject in Mathematica)
MLMARKa mark in a MathLink stream
MLENVMathLink library environment
  • The following constants are set up when a MathLink template file is processed:
MLINK stdlinkthe standard link that connects a program built from MathLink templates to Mathematica
MLINK stdenvthe standard MathLink environment in a program built from MathLink templates
  • All functions defined in mathlink.h are C language functions. They can be called from other languages with appropriate wrappers.
  • All functions defined in mathlink.h which return int yield a nonzero value if they succeed; otherwise they return 0 and have no effect.
  • In a program set up using MathLink templates (.tm files), the link to Mathematica is called stdlink.
  • All functions defined in mathlink.h which put data to a link do not deallocate memory used to store the data. Functions which get data from a link may allocate memory to store the data. 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.