C++ 指针,在形式上同其他变量一样,也是一个变量,只不过它的值在字面上表现为地址格式的字符串,定义一个指针,相当于定义了一个对于某个对象的引用,该指针提供了其所引用对象的所有接口,有了指针,就可以通过指针间接的操作原始对象。
指针变量的字面量以及其所指对象的字面量
| #include <iostream> |
| using namespace std; |
| int main() { |
| int var = 20; |
| int *var_address; |
| var_address = &var; |
| cout << "Value of var variavle: " << var << endl; |
| |
| cout << "Address stored in var_address variable: " << var_address << endl; |
| |
| cout << "Value of *var_address: " << *var_address << endl; |
| |
| return 0; |
| } |
在上面的代码段中,首先定义了一个原始对象 int var = 20;
接着定义了一个指针 var_address
变量,同时声明该指针所指的原始对象的数据类型为整型,在指针前加上星号 *
可以获取到该指针所指的对象的具体值。紧接着,为指针变量 var_address
赋值,使用 &
获取到原始对象 var
的地址,并将这个地址储存到指针变量所在的位置。在上述过程中涉及到两种符号:*
用户获取指针所指原始对象的值,&
用于获取原始对象的地址。
使用原始对象直接修改对象值
| #include <iostream> |
| using namespace std; |
| int main() { |
| int var = 20; |
| cout << var << endl; |
| |
| var = 10; |
| cout << var << endl; |
| |
| } |
使用原始对象的地址修改原始对象的值
| #include <iostream> |
| using namespace std; |
| int main() { |
| int var = 20; |
| cout << var << endl; |
| |
| int *var_address; |
| var_address = &var; |
| *var_address = 10; |
| cout << var << endl; |
| |
| } |
C++ 指针,在形式上同其他变量一样,也是一个变量,只不过它的值在字面上表现为地址格式的字符串,定义一个指针,相当于定义了一个对于某个对象的引用,(删除线内的内容存在错误,今天才了解到指针和引用在 C++ 中是两个不同的概念)该指针提供了其所引用对象的所有接口,有了指针,就可以通过指针间接的操作原始对象。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· .NET10 - 预览版1新功能体验(一)