const 与 指针
const 与 指针
指向 const 对象的指针
指向 const 对象的指针,不能够修改指针指向对象的值;但是可以修改指针的指向。举个例子:就是不能更换房间内的物品,但是可以更换房间。
我们都知道,指针的值是空间中的一个地址:也就是说不能修改地址指向对象的值;但是可以给指针一个新的地址。
#include <iostream> int main(int argc, char const *argv[]) { int pi = 300; const int *pint = π std::cout << "*pint=" << *pint << "\tpint=" << pint << endl; int pi2 = 400; // *pint = 500; //error 不能直接修改指针的指向的对象的值 pint = &pi2; //可以修改指针的指向 std::cout << "*pint=" << *pint << "\tpint=" << pint << endl; return 0; }
const 指针
const 指针即常量指针。指针的值不能修改,也就是说指针指向的地址不能变,但是可以修改指向对象的值。还是用房间与物品举例子:房间不能换,但是房间内的物品可以换。
#include <iostream> int main(int argc, char const *argv[]) { int number = 100; int *const pNumber = &number; std::cout << "*pNumber=" << *pNumber << "\tpNumber" << pNumber << endl; //output : *pNumber=100 pNumber0x5ffe50 int number2=200; // pNumber=&number2; // error : const 指针不能指向新的对象 number = 200; //可以修改const指针指向对象的值;指针指向的地址不变。 std::cout << "*pNumber=" << *pNumber << "\tpNumber" << pNumber << endl; //output : *pNumber=200 pNumber0x5ffe50 return 0; }
欢迎关注公众号
本文来自博客园,作者:胖子说嘛,转载请注明原文链接:https://www.cnblogs.com/pangzishuoma/p/17498800.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具