HFZXGETS - データ域文字フィールドを C ストリングとして取得
フォーマット
#include “hfzxhfmt.h"
#define HFZXGETS(pSrc) \
(HFZXGETS)(pSrc, sizeof(pSrc))
char * (HFZXGETS)(char *pSrc, int src_len);
概要
HFZXGETS() は、データ域文字フィールドからヌル終了ストリングを作成する場合に使用します。バッファー・データ・フォーマットではないデータ域フィールドの場合、ストリングは LE HEAP ストレージに作成され、HFZXUFMT 終了処理の完了時に自動的に解放されます。HFZXGETS() の呼び出し元が、返されたストレージ域を解放してはなりません。バッファー・データ・フォーマットであるデータ域フィールドの場合は、既存のバッファー・アドレスが返されます。
HFZXGETS() から返されたストリングを変更することによってデータ域フィールドを更新することはできません。
HFZXGETS() はマクロであり、同じ名前で関数を呼び出します。このマクロを使用する利点は、必要な引数が 1 つのみであるという点です。
戻り値
要求されたデータ域フィールドのアドレスを、ヌル終了ストリングとして返します。
例
#include “hfzxhfmt.h"
UFM ufm;
char *psz;
…
psz = HFZXGETS(ufm.EVENT_TYPE);
If (strlen(psz) >= 6 && memcmp(psz,"Abend ") == 0) { // Abend event
…
}