MLPutByteArray (C 関数)

MLPutByteArrayWSPutByteArrayに置き換えられた.

int MLPutByteArray(MLINK link,const unsigned char *a,const int *dims,const char **heads,int d)

範囲0255内の整数配列を で指定されたMathLink接続に置き,次元 で深さが の配列を形成する.

詳細

  • 配列 は, として明示的に宣言されたC言語配列のようにメモリにレイアウトされなければならない.
  • NULLとして与えられる場合,配列は各レベルにおいて頭部Listを持つと見なされるようになる.
  • レベル での配列の長さはであるとされる.
  • MLPutByteArray()はエラーがあると0を返し,それ以外の場合にはゼロ以外の値を返す.
  • MLError()を使うと,MLPutByteArray()が不成功の場合にエラーコードを引き出すことができる.
  • MLPutByteArray()は,MathLinkヘッダファイルmathlink.hの中で宣言される.

例題

  (1)

#include "mathlink.h"

/* send a list of integers in the range 0-255 to a link */

void f(MLINK lp)
{
    unsigned char array[10][5][3][4];
    long dims[4];
    int i;

    for(i = 0; i < 600; i++)
        *((unsigned char *)array + i) = i;

    dims[0] = 10;
    dims[1] = 5;
    dims[2] = 3;
    dims[3] = 4;

    if(! MLPutByteArray(lp, (unsigned char *)array, (long *)dims, (char **)0, 4))
        { /* unable to send array of integers to lp */ }
}