Latest web development tutorials

ポインタにC ++のポインタ(マルチレベルの間接アドレス指定)

C ++のポインタ C ++のポインタ

ポインタは、間接の多段形のポインタがアドレス指定であるか、ポインタチェーンです。 一般的に、ポインタは変数のアドレスが含まれています。 私たちは、ポインタへのポインタを定義するときは、最初のポインタは第2のポインタのアドレスを含む、第2のポインタは、実際の値の位置が含まれています。

C ++、ポインタへのポインタ

すなわち、変数名の前に2つのアスタリスクを配置し、以下のようにポインタ変数へのポインタを宣言する必要があります。 たとえば、次の例では、int型のポインタのポインタへのポインタを宣言します。

int **var;

ターゲットを間接的にポイントがこの値にアクセスする別のポインタへのポインタである場合、以下の例に示すように、2つのアスタリスク演算子の使用を必要とします。

#include <iostream>
 
using namespace std;
 
int main ()
{
   int  var;
   int  *ptr;
   int  **pptr;

   var = 3000;

   // 获取 var 的地址
   ptr = &var;

   // 使用运算符 & 获取 ptr 的地址
   pptr = &ptr;

   // 使用 pptr 获取值
   cout << "Value of var :" << var << endl;
   cout << "Value available at *ptr :" << *ptr << endl;
   cout << "Value available at **pptr :" << **pptr << endl;

   return 0;
}

上記のコードはコンパイルされ、実行されると、次の結果を生成します。

Value of var = 3000
Value available at *ptr = 3000
Value available at **pptr = 3000

C ++のポインタ C ++のポインタ