C++指针操作数组详解:谭浩强教程

需积分: 10 73 下载量 67 浏览量 更新于2024-08-23 收藏 8.66MB PPT 举报
在谭浩强编著的《C++程序设计》一书中,第二章着重讲解了通过指针引用数组元素的概念。数组在C++中是一个重要的数据结构,它是一系列相同类型的元素的集合,可以通过索引来访问。指针是C++中的核心概念,它是一个变量,存储的是内存地址,可以用来间接访问内存中的数据。 1. **指针初始化**:首先介绍如何为指针变量赋初值,如`int *p = a;`这里将数组首地址a赋给了指针p,这样p就指向了数组的第一个元素。 2. **通过指针访问数组元素**:指针可以用来直接访问数组元素,例如`*p=1`表示将值1存储在p所指向的位置,即a[0]。同样,`*(p+1)=2;`用于访问数组的第二个元素a[1]。这里强调了C++中的一点规则,即`p+1`不是指向下一个字节,而是指向数组的下一个元素。 3. **指针递增与赋值**:`*++p`表示先递增指针再取值,而`p=p+1`则是先增加指针,然后取新的地址。例子`p=p+1; *p=2;`展示了指针的动态更新过程。 4. **示例演示**:一系列的数值赋值操作`p=2004H`, `2024H`, `2020H`, ... 表明指针可以被赋予不同的地址,进而间接改变数组的不同元素。 5. **C++与C的关系**:C++是在C语言的基础上发展起来的,它保留了C语言的优点,如灵活性和可移植性,同时引入了面向对象编程特性。C++语言支持结构化编程,提供了丰富的运算符和数据结构,使得程序设计更加高效。 6. **C语言特点**:C语言以其简洁、灵活和高效的特点著称,支持结构化编程,提供了二进制位运算和灵活的数据结构,但同时也存在语法结构不够严密的问题,对初学者有一定的学习挑战。 通过指针引用数组元素是C++程序设计中基础且关键的部分,理解指针的动态操作对于有效利用内存和优化代码性能至关重要。谭浩强的教材对此进行了深入浅出的讲解,适合希望系统学习C++的读者参考。