initstate() - random() のジェネレーターの初期化

標準

標準/拡張機能 C/C++ 依存項目

XPG4.2
Single UNIX Specification、バージョン 3

両方  

形式

#define _XOPEN_SOURCE_EXTENDED 1
#include <stdlib.h>

char *initstate(unsigned seed, char *state, size_t size);

機能説明

initstate() 関数を使用すると、state 引数で指定される状態配列を、呼び出し側のスレッドによる random() 関数の呼び出しの中で将来の使用に備えて初期化することができます。size 引数は、状態配列の大きさをバイト単位で設定します。この引数が initstate() 関数で使用され、使用する乱数番号ジェネレーターのレベルが決定されます。状態配列が大きいほど、番号は乱数になります。状態の情報量の値は、8、32、64、128、および 256 バイトです。その他の合計は、最も近い値に切り捨てられます。seed 引数は乱数のシーケンスの開始点を指定し、同じ位置から再開するために提供されます。initstate() 関数は、前の状態情報配列へのポインターを戻します。

戻り値

正常に実行された場合、initstate() は前の状態配列へのポインターを戻します。

正常に実行されなかった場合、initstate() は NULL ポインターを戻します。 initstate() が size が 8 よりも小さい値で呼び出された場合、NULL を戻します。

関連情報