WSGetReal64 (C 関数)

int WSGetReal64(WSLINK link,double *x)

WSTP接続のlink から倍精度浮動小数点数を得て,それをx に保持する.

詳細

  • リンク上のデータがC言語のint型に対応するものであれば,WSGetReal64()はそれをx に保持する前にdouble型に強制変換する.
  • リンク上のデータが,ユーザのコンピュータシステム上のC言語のdouble型で保持できる範囲を超える数字に対応するものであれば,WSGetReal64()は失敗し,0を返す.
  • 任意精度の実数は,RealDigitsで生成された数列として,通常,整数配列またはC言語の小数点記号の文字列として,WSTPプログラム間を送信される.この数列はWSGetInteger32List()またはWSGetString()を使って読み取ることができる.
  • WSGetReal64()はエラーがあると0を返し,関数が成功すると0以外の値を返す.
  • WSError()を使うと,WSGetReal64()が不成功の場合にエラーコードを引き出すことができる.
  • WSGetReal64()は,WSTPヘッダファイルwstp.hの中で宣言される.

例題

  (1)

#include "wstp.h"

/* read a double-precision floating-point number from a link */

void f(WSLINK lp)
{
    double r;

    if(! WSGetReal64(lp, &r))
        { /* unable to read the floating-point number from lp */ }

    /* ... */
}