C++ 间接引用
获取内存地址和值
在上一页的示例中,我们使用指针变量获取变量的内存地址(与&
操作符一起使用)。但是,您也可以通过使用*
运算符(取消引用运算符)使用指针来获取变量的值:
实例
string food = "Pizza"; // 变量声明
string* ptr =
&food; // 指针声明
// 参考:用指针(0x6dfed4)输出 food 的内存地址
cout <<
ptr << "\n";
// 解引用:用指针输出 food 的值(Pizza)
cout <<
*ptr << "\n";
运行实例 »
请注意,*
符号在这里可能会混淆,因为它在我们的代码中有两种不同的作用:
- 在声明 (string* ptr)中使用时,它会创建一个指针变量。
- 当不在声明中使用时,它充当取消引用运算符。