定数値の保管場所を指定する。
#pragma optionsも参照してください。
xlc、 xlC、および c89 でのデフォルトは -qroconst です。 cc でのデフォルトは -qnoroconst です。
-qroconst を指定した場合は、コンパイラーによって定数が読み取り専用ストレージに配置されます。 -qnoroconst を指定した場合は、定数値は読み取り/書き込みストレージに配置されます。
定数値を読み取り専用メモリーに配置することによって、実行時のパフォーマンスを向上させてストレージを節約し、共用アクセスを提供することができます。読み取り専用の定数値をコードが変更しようとすると、メモリー・エラーが生成されます。
-qroconst オプションのコンテキストでは、定数値とは、 const によって修飾された変数 (const によって修飾された文字、整数、浮動小数点、列挙、構造体、共用体、および配列を含む) を指します。以下の変数には、このオプションは適用されません。
- volatile で修飾された変数、および volatile 変数を含む集合体 (struct、 union など)
- ポインター、およびポインター・メンバーを含む複合集合体
- ブロック・スコープを持つ自動型または静的型
- 初期化されていない型
- const によってすべてのメンバーが修飾された通常の構造体
- アドレスである初期化指定子、または非アドレス値へのキャストである初期化指定子
-qroconst オプションでは、 -qro オプションは暗黙指定されません。ストリング・リテラル (-qro) と定数値 (-qroconst) の両方の保管特性を指定したい場合は、これらのオプションを両方とも指定しなければなりません。