
[C++专栏]const和指针,星号的位置和效果总结
发布日期:2021-05-28 16:50:12
浏览次数:25
分类:精选文章
本文共 903 字,大约阅读时间需要 3 分钟。
实验概述
本实验旨在验证const关键字对指针指向和指向内容的影响,重点研究const关键字如何影响左边的关键字。当const位于最左侧时,它不仅会影响右侧的指针内容,更会带来潜在的内存地址相关问题。
代码示例
#include "stdafx.h"#includeusing namespace std;unsigned int MAX_LEN = 11;int main() { int num = 11; char alpha = 'a'; char strHelloworld[] = { "helloworld" }; char const* pStr1 = "helloworld"; char* const pStr2 = strHelloworld; char const* const pStr3 = "helloworld"; int const* const pInt = # char const* const pChar = α
//操作结果输出cout << "content of string:" << endl;cout << strHelloworld << endl;cout << "address of string:" << endl;cout << &strHelloworld << endl;//pStr1的内容不可变//pStr2和pStr1指向相同แห�️//pStr3的内容不可变
}
实验结果本实验发现,当pStr1 = strHelloworld完成后,pStr2和pStr1的指向相同,这意味着修改一个会影响另一个指针的内容。这种行为类似于一个指针陷阱,容易让开发者误以为指针的内容是独立的。一个比较大的坑当pStr1 = strHelloworld执行后,pStr2和pStr1的指针指向相同地址。虽然pStr1的内容不可变,但由于pStr2拥有修改权限,其修改会间接影响pStr1的内容。这种潜在的内存管理问题可能导致严重的数据错误,必须特别注意指针的传递和可变性问题。
发表评论
最新留言
哈哈,博客排版真的漂亮呢~
[***.90.31.176]2025年04月17日 04时03分27秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
Ubuntu 修改权限的操作
2019-03-13
caffe训练的时候遇到的text-format 错误解决方案。
2019-03-13
Java 8新特性(一):Lambda表达式
2019-03-13
ZOJ问题(坑死了)
2019-03-13
Little Zu Chongzhi's Triangles
2019-03-13
算法入门
2019-03-13
cf-A. Wet Shark and Odd and Even(水)
2019-03-13
Train Problem II(卡特兰数+大数乘除)
2019-03-13
一些技术博客
2019-03-13
第01问:MySQL 一次 insert 刷几次盘?
2019-03-13
分布式 | DBLE 3.20.07.0 来啦!
2019-03-13
振荡器指标
2019-03-13
libvirtd:内部错误:Failed to apply firewall rule
2019-03-13
优先级队列2
2019-03-13
简单易懂的背包问题
2019-03-13
属性的使用错误
2019-03-13
C#选定文件复制到指定文件夹
2019-03-13
ACM DP Partitioning by Palindromes
2019-03-13
TiKV 源码解析系列文章(十三)MVCC 数据读取
2019-03-13
TBSSQL 的那些事 | TiDB Hackathon 2018 优秀项目分享
2019-03-13