● 構造体

STRCALC_PARAM 構造体

typedef struct {
    unsigned long   reserved1;
    char            *str;
    unsigned long   reserved2;
    long            paren_cnt;
    double          ans;
    char            **ppcheck_paramname;
    long            nametbl_cnt;
    long            b_hexchk;
    double          *pmem;
    long            memmax;
    unsigned char   reserved3[220];
} STRCALC_PARAM,*PSTRCALC_PARAM;

変数等、StrCalc の環境を含む構造体です。

メンバ内容
reserved1(予約)
str計算内容を格納したバッファの先頭アドレスをセットします。バッファの内容は末尾ヌルである必要があります。
reserved2(予約)
paren_cnt通常括弧の階層限界数を 1 以上でセットします。計算式内の括弧が、この限界数を超えるネスト数になるとSTATUS_PARENTHESIS_OVERNESTを返します。
ans計算結果が格納されます。
StrCalc BASIC では、内部の計算処理で頻繁に更新されますので、計算後は次の StrCalc系関数を呼び出す前に、内容を読み出しておいてください。
ppcheck_paramname変数の禁止ワードを指定するテーブルの先頭アドレスを指定します。
禁止ワードを追加しない場合は NULL をセットします。
nametbl_cntppcheck_paramname で指定したテーブルの要素数をセットします。
禁止ワードを追加しない場合は 0 をセットします。
b_hexchk1 の場合は、変数、数学関数、定数の名前が StrCalc の 16進数表現として通用する文字列であるかを、登録時にチェックします。
0 の場合はチェックを行いません。その場合、変数名としての条件が揃えば、16進数の数値も使用できます。
pmemsingle character memory に割り当てるメモリの実体を指定します。使用しない場合は NULL を指定します。
memmaxpmem の要素数を指定します。single character memory を使用しない場合は 0 を指定します。
reserved3(予約)

メンバ reserved1reserved2reserved3 の内容は変更しないでください。