関数説明はそれぞれ、標準/拡張機能、言語サポート、依存項目を示す表から始まります。詳細については、下記の表を参照してください。
標準/拡張機能 | C/C++ | 依存項目 |
---|---|---|
ISO C | C のみ | POSIX(ON) |
ISO C 改訂 | C++ のみ | OS/390 V2R6 |
POSIX.1 | 両方 | OS/390 V2R7 |
POSIX.1a | OS/390 V2R8 | |
POSIX.2 | OS/390 V2R9 | |
POSIX.4a | OS/390 V2R10 | |
POSIX.4b | z/OS V1R1 | |
BSD 4.3 | z/OS V1R2 | |
XPG4 | z/OS V1R3 | |
XPG4.2 | z/OS V1R4 | |
SAA | z/OS V1R5 | |
C ライブラリー | z/OS® V1R6 | |
Language Environment® | z/OS V1R7 | |
z/OS UNIX | z/OS V1R8 | |
Single UNIX Specification、バージョン 2 | z/OS V1R9 | |
ISO/ANSI C++ | AMODE 64 | |
RFC2292 | ||
RFC2553 | ||
RFC3678 | ||
ANSI/IEEE Standard P754 | ||
C99 | ||
Single UNIX Specification、バージョン 3 | ||
C/C++ DFP | ||
C++ TR1 C99 |
示されている標準は、その関数の起点を指しており、その標準への準拠は必ずしも示していません。例えば、XPG4 の機能によって強化された関数は、XPG4 がリストされて います。
示されている標準は、次のとおりです。
C/C++ は、z/OS XL C コンパイラー か z/OS XL C++ コンパイラーのどちらかまたは両方で関数がサポートされて いるかどうかを示します。
POSIX は、エンクレーブ・レベルで保守されるアプリケーション特性です。この特性は、エンクレーブ初期化時に設定した後で変更すること はできません。
POSIX を ON に設定すると、pthread_create() などの POSIX に固有の関数を使用できます。
POSIX(ON) の作用の 1 つとして、POSIX シグナル処理セマンティクスの 使用可能化があります。このセマンティクスは、z/OS Language Environment の条件処理セマンティクスと密接に相互作用します。ANSI と POSIX のセマンティクス間に不明確さがある場合は、POSIX ランタイム設定によって POSIX セマンティクスに従うことが示されます。
図 1 に示すように、これらの標準にはオーバーラップした部分があります。
C ライブラリーには、SAA CPI レベル 2 定義の拡張機能で ある関数がいくつかあります。 これらのライブラリー関数は、LANGLVL(EXTENDED) コンパイル時オプションが有効な場合にのみ使用することができます。示したように、LANGLVL(ANSI) を指定すると、拡張機能用のいくつかのスタブ ・ルーチンが 使用できます。これらはバージョン 1 との互換性の目的で使用できますが、将来的に使用できなくなる可能性があります (ランタイム・ライブラリー内で、スタブ・ルーチン は、実行時に指定されたルーチンを見つけるために必要な最小行のコードを含むルーチンです。)
ヘッダーに定義されているシンボルの多くは、フィーチャー・テスト・マクロで「プロテクト」されています。フィーチャー・テスト・マクロと標準との関連についての 詳細は、フィーチャー・テスト・マクロを参照してください。