dyninit() — __dyn_t 構造体の初期化

標準

標準/拡張機能 C/C++ 依存項目
C ライブラリー 両方  

形式

#include <dynit.h>

int dyninit(__dyn_t *dyn_parms);

機能説明

dynalloc() 関数と dynfree() 関数に渡すパラメーター・リストの作成に使用される、__dyn_t 構造体を初期化します。dyninit() を使用して __dyn_t 構造体を初期化しないと、未定義の動作が起きることがあります。

__dyn_t 構造体は、dynit.h ヘッダー・ファイルに定義します。エレメントの説明は、dynalloc() — データ・セットの割り振りにあります。

戻り値

MVS™ の下で正常に実行された場合、dyninit() は 0 を戻します。

正常に実行されなかった場合は、dyninit() はゼロ以外を戻します。

CELEBD09
⁄* CELEBD09

   This example initializes a __dyn_t
    structure, called ip.

 *⁄
#include <stdio.h>
#include <string.h>
#include <dynit.h>

main() {
  char dsn[]="USER.TEST.DATASET";
  __dyn_t ip;
  int ret;

  dyninit(&ip);
  ip.__ddname   = "TEST";
  ip.__dsname   = dsn;
  ip.__status   = __DISP_NEW;
  ip.__normdisp = __DISP_DELETE;
  ip.__alcunit  = __TRK;
  ip.__primary  = 1;
  ip.__unit     = "SYSDA  ";

  if ((ret = dynalloc(&ip)) != 0)
    printf("dynalloc() ret=%d, error code %04x, info code %04x¥n",
           ret, ip.__errcode, ip.__infocode);

  else {
    dyninit(&ip);
    ip.__ddname   = "TEST";

    if ((ret = dynfree(&ip)) != 0)
      printf("dynfree() ret=%d, error code %04x, info code %04x¥n",
             ret, ip.__errcode, ip.__infocode);

    else puts("success!");
  }
}

関連情報