COBOL2002 ユーザーズガイド
13.3.1 サービスルーチンを呼び出す関数の形式
COBOL入出力サービスルーチンは,すべて次の形式で呼び出します。
- 形式
#include "CBL85fl.h"
int WINAPI サービスルーチン名(CBLCOMFL * com, CBLPARMFL * parm)
- 引数
- CBLCOMFL * com:管理情報インタフェース領域のアドレス
- CBLPARMFL * parm:パラメタインタフェース領域のアドレス
- 戻り値
- 0:正常に終了した場合
- -1:エラーが発生した場合
- 注意事項
- 管理情報インタフェース領域,およびパラメタインタフェース領域は,ユーザプログラム側で確保する必要があります。
- 各インタフェース領域中のシステムが使用する領域,および予備領域には,最初のCBLOPENサービスルーチンを実行する前にNULL(X'00')を指定して,領域をクリアしておく必要があります。
ただし,一度CBLCLOSEサービスルーチンで入出力を終了したあと,再度同じインタフェース領域を使ってCBLOPENサービスルーチンで入出力を開始する場合は,管理情報インタフェース領域中のシステムが使用する領域,および予備領域をクリアする必要はありません。
- 同じファイルにアクセスするときには,CBLOPENサービスルーチンでファイルを開いてからCBLCLOSEサービスルーチンでファイルを閉じるまで,同じ管理情報インタフェース領域を使用する必要があります。
- 同時に複数のファイルにアクセスする場合は,各ファイルに対して別々の管理情報インタフェース領域を用意する必要があります。
- 管理情報インタフェース領域中のファイル情報は,CBLOPENサービスルーチンを実行したときの設定値が有効となります。ファイルを開いたあとの入出力サービスルーチンでファイル情報を変更しても無効です。ただし,デバッグ情報出力指示の設定は,ファイルを開いたあとでも有効となります。
All Rights Reserved. Copyright (C) 2013, 2016, Hitachi, Ltd.
All Rights Reserved. Copyright (C) 2002, 2011, Microsoft Corporation.