FreeBASIC マニュアルのトップに戻る

FreeBASIC 学習ノート 8.1 ポインタの概念

目次→教本→いっしょに学ぼうhttps://blog.csdn.net/rainheart311/article/details/78833054←オリジナル・サイト

学習ノート 8.1 ポインタの概念 左にメニュー・フレームが表示されていない場合は、ここをクリックして下さい

←リンク元に戻る プログラム開発関連に戻る

→次:8.2 ポインター型と操作

 ポインターは、アドレスデータを格納する特別な変数です。

 このアドレスは、コンピューターのメモリの特定の場所に存在する値を直接指します。変数単位はアドレスで見つけることができます。
 つまり、ポインターが指すアドレスは変数の記録場所を参照するため、アドレスは「ポインター」として視覚化されます。ポインターが指すアドレスは有効でなければなりません。

 32ビットプログラムでは、アドレスはすべて 32ビット長なので、すべての型のポインターの値は 32ビット整数です。アドレスはポインターを定義することで、その値は &H00000000 〜 &HFFFFFFFF の範囲で変更できます。
 FreeBASIC では Integerデータ型は OS のビット数で変わるため、32ビットシステムでは Long(32ビット = 4バイト)であり、64ビットでは LongInt(64ビット = 8バイト)になります。これは、Integerを使って、 32ビットまたは64ビットシステムで、長さを計算せずに、ポインターを単独で簡単に切り替えられることを示します。

 値が 100 の変数 a が、アドレス &H00000001 のメモリに格納されているとします。一方、値が 200 の変数 b が、アドレス &H00000002 のメモリに格納されています。
 ポインタ p の値が &H00000001 だと、この変数 a を指します。

 これらの関係は次のようになります:(枠内のデータは変数です)
ポインタ p  &H00000001  →   100   aのアドレスは:&H00000001
ポインタ p+1  &H00000002  →   200   bのアドレスは:&H00000002

 ポインター p の値が &H00000001 の場合、p は変数 a を指します。
 p の値が &H00000002 の場合、p+1(&H00000001+1 = &H00000002)と見なすことができ、p は変数 b を指します。
 ポインターが有効な「アドレスを指す値」を持つ変数であることを理解すると、ポインターの基本的な考え方を理解できます。


→次:8.2 ポインター型と操作
いっしょに学ぼう に戻る
←リンク元に戻る プログラム開発関連に戻る

ページ歴史:2017-12-18 14:53:56
日本語翻訳:WATANABE Makoto、原文著作者:rainheart311

ホームページのトップに戻る

表示-非営利-継承