C++指针变量与引用教程:谭浩强详解

需积分: 48 151 下载量 162 浏览量 更新于2024-08-23 收藏 8.66MB PPT 举报
指针变量在C++程序设计中扮演着重要的角色,它们是程序中用于存储内存地址的关键概念。谭浩强的《C++程序设计》一书中详细讲解了这一主题。首先,指针变量本质上是用来存储其他变量地址的特殊变量,其值始终是另一个变量的内存地址,而不是该变量的值本身。在提供的代码示例中,声明了两个整型指针`p1`和`p2`,它们分别指向变量`a`和`b`的地址。 非法的部分在于将非地址数据赋给指针,例如`p=100;`,这是不允许的,因为指针只能存储内存地址,不能存储数值。正确的操作是将`p`指向`i`的地址,即`p=&i;`。在`main()`函数中,通过`*p1`和`*p2`来访问实际的变量值,`*`操作符表示取指针所指向的内存位置的值,所以输出结果为`10`和`100`,分别对应`a`和`b`的值。 指针变量的赋值是指改变指针变量指向的内容,如`p1 = &b;`改变了`p1`指向`b`的地址。而指针变量的引用则是指在编程中直接使用指针,不涉及实际的地址更改,如`cout << *p1 << '\t' << *p2 << endl;`是输出指针所指向的值。 C++语言发展自20世纪70年代的C语言,由Dennis Ritchie和Brian Kernighan在B语言基础上改进而来。C++继承了C语言的优点,如结构化编程、灵活的数据类型、运算符丰富以及良好的可移植性,同时引入了面向对象的概念,使其成为更为强大的编程语言。然而,C++的语法结构相对宽松,这给予程序员更大的自由度,但也增加了学习和调试的挑战,需要对语法规则有深入理解。 在使用指针时,理解地址运算、动态内存分配、数组和结构体等概念至关重要。谭浩强的书对此有深入讲解,帮助读者掌握如何安全、有效地使用指针进行内存操作,提升程序的性能和灵活性。指针是C++中不可或缺的一部分,理解和熟练运用指针是提高编程技能的关键环节。