通信用語の基礎知識 IPv4
戻る
参加者募集中

間接演算子

辞書:電算用語の基礎知識 プログラミング仕様編 (PTPROGS)
読み:かんせつえんざんし
品詞:名詞
2010/11/10 作成

ポインターが指すメモリーを変数として扱うポインター演算子

目次

C/C++では、間接演算子*は単項演算子である。右辺値しか取らない。

この演算によってポインターの指すデータを得る操作のことをdereferenceという。

メモリーアドレスは数値であり、このためポインターも必然的に数値になる。

例えば、1000番地にある変数が格納されているとするなら、それは理論上、*1000 として参照できる。このように、アドレスは単なる通し番号なのである。

但しこれは原理を簡潔に説明するための例で、実際のプログラムで*1000という表記は使えない。なぜならポインターは、アドレスの他にデータ型(char、int、longなど)を持っていなければならないからである。*1000では、データ型が分からない。

そこで、単なる数値であるアドレスを、型キャストする。

*(int *)1000

これで、1000番地をint型変数として扱い、読み書きをすることが可能になる。

int x = 5;
*(int *)1000 = x;
用語の所属
ポインター演算子
関連する用語
参照演算子

コメントなどを投稿するフォームは、日本語対応時のみ表示されます


KisoDic通信用語の基礎知識検索システム WDIC Explorer Version 7.03 (16-May-2019)
Search System : Copyright © Mirai corporation
Dictionary : Copyright © WDIC Creators club