谭浩强C++:理解指针变量的引用与非法赋值
需积分: 9 183 浏览量
更新于2024-08-23
收藏 8.9MB PPT 举报
在C++程序设计中,指针变量起着至关重要的作用,它们用于存储内存地址而非实际数据。谭浩强编著的教材中,对于指针的理解是学习C++的重要部分。以下是对指针变量的引用及其在代码中的应用的详细解析:
1. 指针变量的性质:
- 指针变量只能存储地址,这意味着当你声明一个指针时,如`int *p`,`p`实际上是一个内存地址的占位符,而不是存储数值的变量。
- 非法赋值:不能将非地址数据(如整数100)直接赋给指针变量,如`p=100`是不允许的,正确的做法是将地址赋给指针,如`p=&i`,这里`&i`是变量`i`的地址。
2. 指针变量的引用:
- 在程序中,使用`*`运算符可以访问指针所指向的内存位置。例如,在`cout<<*p1<<'\t'<<*p2<<endl;`这行代码中,`*p1`和`*p2`分别表示`p1`和`p2`指向的内存单元的值,即变量`a`和`b`的值。
3. 指针的示例:
- 在提供的代码片段中,`p1`和`p2`分别被初始化为`&a`和`&b`,这意味着它们分别指向`a`和`b`的内存地址。因此,`cout`输出的值是`10`和`100`,分别代表`a`和`b`的值,而`*p1`和`*p2`则直接显示了对应变量的值。
4. C++语言的发展:
- C++是在C语言的基础上发展起来的,它继承了C语言的优点,如结构化编程、灵活性、高效性和可移植性。C++语言的设计初衷是为了编写系统软件,如UNIX操作系统。
5. C语言的特点:
- 结构化:C语言强调清晰的模块划分和控制结构,方便程序设计。
- 运算符丰富:提供算术、逻辑和位运算,支持复杂的数据结构。
- 可移植性:C语言编写的程序能够在不同类型的计算机上运行,但可能需要调整。
- 自由度大与挑战:虽然语法结构相对宽松,但这对初学者来说意味着调试挑战,需要理解和掌握规则。
6. 指针的应用:
- 指针在C++中广泛应用于动态内存管理、函数参数传递、数组操作和数据结构实现等场景,通过指针可以实现高效的内存操作和数据处理。
理解指针变量在C++中的概念、赋值和引用至关重要,它能帮助开发者更好地操纵内存、提高程序性能和实现更复杂的编程技巧。谭浩强的教程中对此有深入讲解,学习者应重点掌握指针的基本用法和注意事项,以便在实际项目中得心应手。
193 浏览量
点击了解资源详情
2014-03-28 上传
2011-05-11 上传
点击了解资源详情
2013-06-16 上传
2020-06-14 上传
2012-08-22 上传
2010-12-15 上传
黄子衿
- 粉丝: 20
- 资源: 2万+
最新资源
- MATLAB新功能:Multi-frame ViewRGB制作彩色图阴影
- XKCD Substitutions 3-crx插件:创新的网页文字替换工具
- Python实现8位等离子效果开源项目plasma.py解读
- 维护商店移动应用:基于PhoneGap的移动API应用
- Laravel-Admin的Redis Manager扩展使用教程
- Jekyll代理主题使用指南及文件结构解析
- cPanel中PHP多版本插件的安装与配置指南
- 深入探讨React和Typescript在Alias kopio游戏中的应用
- node.js OSC服务器实现:Gibber消息转换技术解析
- 体验最新升级版的mdbootstrap pro 6.1.0组件库
- 超市盘点过机系统实现与delphi应用
- Boogle: 探索 Python 编程的 Boggle 仿制品
- C++实现的Physics2D简易2D物理模拟
- 傅里叶级数在分数阶微分积分计算中的应用与实现
- Windows Phone与PhoneGap应用隔离存储文件访问方法
- iso8601-interval-recurrence:掌握ISO8601日期范围与重复间隔检查