MLPutUTF32Function (C 函数)

MLPutUTF32Function 已经被 WSPutUTF32Function 所取代.

int WLPutUTF32Function(( MLINK l , const unsigned int * s , int v , int n )

puts a function with head given by a UTF-32 encoded symbol with name s of length v and with n arguments to the MathLink connection specified by l.

更多信息

  • After the call to WLPutUTF32Function(), other MathLink functions must be called to send the arguments of the function.
  • The function name s encoded in UTF-32 must start with a byte order mark.
  • The length of the symbol name s stored in v must include the byte order mark.
  • MLPutUTF32Function() returns 0 in the event of an error, and a nonzero value if the function succeeds.
  • Use MLError() to retrieve the error code if MLPutUTF32Function() fails.
  • MLPutUTF32Function() is declared in the MathLink header file mathlink.h.

范例

基本范例  (1)

#include "mathlink.h"

/* A function to put List[1,2,3] to the link */

void f(MLINK l)
{
    unsigned int name[5];

    name[0] = 0xFEFF;
    name[1] = 'L';
    name[2] = 'i';
    name[3] = 's';
    name[4] = 't';

    if(! MLPutUTF32Function(l, (const unsigned int *)name, 5, 3))
    { /* Unable to write the function to the link */ }

    if(! MLPutInteger8(l, 1))
    { /* Unable to write 1 to the link */ }

    if(! MLPutInteger8(l, 2))
    { /* Unable to write 2 to the link */ }

    if(! MLPutInteger8(l, 3))
    { /* Unable to write 3 to the link */ }

    if(! MLEndPacket(l))
    { /* Unable to send the end-of-packet sequence to the link */ }

    if(! MLFlush(l))
    { /* Unable to flush the outbound data to the link */ }
}