int MLTestHead(MLINK link, const char *head, int *n)
tests that the next object to be read from link is an expression with head head, and stores the number of arguments of the expression in n.


  • MLTestHead() fails if the current object on the link is not a function with a symbol as a head, or if the name of the symbol does not match head.
  • MLTestHead() returns 0 in the event of an error, and a nonzero value if the function succeeds.
  • Use MLError() to retrieve the error code if MLTestHead() fails.
  • MLTestHead() is declared in the MathLink header file mathlink.h.

ExamplesExamplesopen allclose all

Basic Examples (1)Basic Examples (1)

#include "mathlink.h"

/* test whether the head of the incoming object is "ReturnPacket" */

void f(MLINK lp)
    int args;

    if(MLTestHead(lp, "ReturnPacket", &args))
        { /* read the contents of the ReturnPacket[] */ }
        { /* the head of incoming packet is not "ReturnPacket" */ }
New to Mathematica? Find your learning path »
Have a question? Ask support »