単項演算とは、数学で、被作用子(オペランド)が一つだけであるような演算(つまり、入力が一つの演算)のこと。

たとえば、論理否定真理値に対する単項演算であり、自乗実数に対する単項演算である。階乗 n! も単項演算である。与えられた集合 S に対する単項演算は、関数 SS に他ならない。

プログラミング言語においても、単項演算子のある言語もある。C言語の例を挙げる。

  • インクリメント: ++x, x++
  • デクリメント: --x, x--
  • アドレス: &x
  • 間接演算: *x
  • 正の単項演算: +x
  • 負の単項演算: -x
  • ビット単位否定: ~x
  • 論理否定: !x
  • Sizeof: sizeof x
  • Sizeof: sizeof(型の名前)
  • 型変換: (型の名前)オペランド

なお、「関数を返す関数」というような「高階関数」があるような系であれば、2以上の任意の引数個を持つ演算(関数)は、単項演算にすることができる(カリー化)。

関連項目 編集