間接参照
以下、C言語を例に説明する。なお、標準規格では「〜へのポインタ」等として、「アドレス」と直接的に表現するのを避けていることがあるが、ここでは一般的な解釈すなわちポインタはアドレスとする。
C言語では、単項&演算子すなわちアドレス演算子 (address-of operator) を、変数名や関数名など左辺値(代入できるとは限らない)を与える式に作用させると、その式が表すものを指すアドレスを得られる。このアドレスは、対応するポインタ型の変数に、その値として代入したりできる。
単項*演算子すなわち間接演算子 (indirection operator) は、デリファレンスを行う演算子である。前述のアドレスを表す式の前に間接演算子を付けると、それを解決(間接参照)して、その指しているもの(の左辺値)を得られる。
間接参照は、実装上のテクニックにとどまるものではなく、たとえばデビッド・ホイーラーによる格言 "All problems in computer science can be solved by another level of indirection." が示すように、問題の解決のためにしばしば必要なものである。