Rational Developer for System z
Enterprise PL/I for z/OS, Version 3.8, プログラミング・ガイド

z/OS UNIX を指定した場合の MAIN の呼び出し

z/OS UNIX 環境では、SYSTEM(MVS) オプションを指定して MAIN プログラムをコンパイルすると、通常どおり、プログラムが呼び出されたときに指定されたパラメーターを含む 1 つの CHARACTER VARYING ストリングがプログラムに渡されます。

しかし z/OS UNIX 環境で SYSTEM(OS) オプションを指定して MAIN プログラムをコンパイルすると、z/OS UNIX のマニュアルに記述されている 7 つのパラメーターがプログラムに渡されます。 これらの 7 パラメーターは、次を含んでいます。

図 17 内のプログラムは、SYSTEM(OS) インターフェースを 使用して、個々の引数と環境変数を参照して表示します。

図 17. z/OS UNIX 引数と環境変数を表示するサンプル・プログラム
  *process display(std) system(os);

   sayargs:
    proc(argc, pArgLen, pArgStr, envc, pEnvLen, pEnvStr, pParmSelf)
    options( main, noexecops );

     dcl argc                fixed bin(31) nonasgn byaddr;
     dcl pArgLen             pointer nonasgn byvalue;
     dcl pArgStr             pointer nonasgn byvalue;
     dcl envc                fixed bin(31) nonasgn byaddr;
     dcl pEnvLen             pointer nonasgn byvalue;
     dcl pEnvStr             pointer nonasgn byvalue;
     dcl pParmSelf           pointer nonasgn byvalue;

     dcl q(4095)             pointer based;
     dcl bxb                 fixed bin(31) based;
     dcl bcz                 char(31) varz based;

     display( 'argc = ' || argc );
     do jx = 1 to argc;
       display( 'pargStr(jx) =' || pArgStr->q(jx)->bcz );
     end;
     display( 'envc = ' || envc );
     do jx = 1 to envc;
       display( 'pEnvStr(jx) =' || pEnvStr->q(jx)->bcz );
     end;

   end;

Terms of use | Feedback

This information center is powered by Eclipse technology. (http://www.eclipse.org)