解引用运算符
本课属于 Coddy C++ 学习旅程的“逻辑与流程”单元。第 3 课,共 56 课。
现在你已经能够获取指向变量的指针,接下来需要学习如何访问和修改该内存地址中的值。这里,解引用运算符(你也可以使用解引用运算符,通过指针修改原始变量。当你给 这种间接访问方式让指针变得如此强大:只要你有指向变量的指针,就可以在程序中的任何位置读取和修改变量。
*)就变得至关重要。解引用运算符 * 用于访问指针所指向的内存地址中存储的值。在指针变量前加上 *,它就会“跟随”该地址,并取出其中实际存储的值。请记住,取地址运算符(&)用于获取变量的内存地址,而解引用运算符(*)用于访问该地址处的值。int number = 42;
int* ptr = &number; // ptr 存储了 number 的地址
int value = *ptr; // value 现在存储了 42*ptr 赋予新值时,实际上是在更改存储在该内存位置的值:*ptr = 100; // 将 number 改为 100
// 虽然我们是通过 ptr 修改的,但 number 现在是 100挑战
简单编写一个程序,通过指针修改变量的值,以演示解引用运算符。
将提供以下输入:
- 一个整数,表示变量的初始值
- 一个整数,表示要通过指针赋予变量的新值
你的程序应当:
- 声明一个名为
temperature的整数变量,并将其初始化为第一个输入值 - 创建一个名为
tempPtr的指针,使其指向temperature变量 - 通过解引用指针打印原始值
- 使用解引用运算符,通过指针将
temperature的值改为第二个输入值 - 再次通过解引用指针打印新值
使用以下确切的输出格式:
Original value: [original value]
New value: [new value]亲手试试
// TODO:在下方编写代码
// 1. 声明变量 temperature,并用 initialValue 初始化
// 2. 创建指向 temperature 的指针 tempPtr
// 3. 通过解引用指针打印原始值
// 4. 通过指针将 temperature 的值改为 newValue
// 5. 通过解引用指针打印新值
这节课包含一个小测验。开始学习即可作答,并记录你的进度。
逻辑与流程中的所有课
自己练习: C++ 在线编译器