c++ 中的 & 和 &** 运算符都用于获取地址,但它们的细微差别在于:& 运算符获取变量的地址,存储在指针变量中,指针类型指向变量类型。&** 运算符获取指针变量的地址,存储在指针指针变量中,指针类型指向指针类型。用途:& 运算符用于获取变量地址传递给函数或存储在其他变量中,而 &** 运算符用于获取指针变量的地址,用于创建指向指针的指针。
C++ 中的 & 和 &** 运算符
在 C++ 中,& 和 & 运算符用于获取变量的地址,但它们有细微的区别:
& 运算符:
- & 运算符获取变量的地址,并将该地址存储在另一个变量中。
- 运算符后跟随一个变量名。
- 生成的地址类型为指针类型,指向正在取址的变量类型。
示例:
<code class="cpp">int num = 10;
int *ptr = &num; // ptr 现在指向 num 的地址,类型为 int*</code>
& 运算符:**
- & 运算符取一个指针的地址,生成一个指向指针变量的指针。
- 运算符后跟随一个指针变量名。
- 生成的地址类型为指向指针类型的指针类型。
示例:
<code class="cpp">int num = 10;
int *ptr = &num;
int **ptrptr = &ptr; // ptrptr 现在指向 ptr 的地址,类型为 int**</code>
区别:
- & 运算符取变量的地址,而 & 运算符取指针的地址。
- & 运算符生成的指针类型指向变量类型,而 & 运算符生成的指针类型指向指针类型。
用途:
- & 运算符用于获取变量的地址,以便可以传递给函数或存储在另一个变量中。
- & 运算符用于获取指针变量的地址,用于创建指向指针的指针。
以上就是c++++中*&什么意思的详细内容,更多请关注编程网其它相关文章!