* (間接) 演算子は、ポインター型オペランドによって参照される値を決めます。 オペランドは、不完全型を指すポインターであることはできません。オペランドがオブジェクトを指す場合、この演算は、 そのオブジェクトを参照している左辺値を生成します。オペランドが関数を指す場合、 結果は C または C++ での関数指定子、オペランドが指すオブジェクトを参照する左辺値です。 配列と関数はポインターに変換されます。
オペランドの型は、結果の型を決定します。例えば、オペランドが int を指すポインターの場合は、結果は、 int 型になります。
無効なアドレス (NULL など) を含む ポインターに間接演算子を適用しないでください。結果は、予測できません。
p_to_y が int を指すポインターとして定義され、 y が int として定義されている場合、式は次のようになります。
p_to_y = &y; *p_to_y = 3;
変数 y は値 3 を受け取ります。
間接演算子は、AltiVec 言語拡張機能が使用可能になっている場合に、ベクトル型を処理するために拡張されました。
関連参照