C言語はいわば高級アセンブラとしての機能が用意されているが、その一つが
レジスター変数である。レジスター変数は文字通り CPU 内部に用意された
レジスターと呼ばれる記憶場所
を直接利用するために用意されたもので、もしレジスターが利用できる場合には
レジスターに直接割り当てられ、メモリは利用されない(レジスターが使えない
場合には次の自動変数と同じになる)。その用途は CPU の内部にあることに
よる高速性である。つまり、プログラマーが明示的にレジスターを利用する事で、
より最適なプログラムが書けるようにしているものである。
レジスター変数の宣言は、以下のように行う。
但し、現実にはよほど慣れたプログラマーでない限り、レジスター変数は使う
必要はありません。現在のコンパイラーは最適化が進んでいるので、自動的に
レジスターへの割り当てを行うからです。
最初のページ 戻る
次へ 最後のページ 目次
Hiroyasu Asami