C++程序设计:理解指向指针的指针变量

需积分: 0 2 下载量 144 浏览量 更新于2024-08-20 收藏 8.66MB PPT 举报
"指向指针的指针变量-C++程序设计(谭浩强完整版)" 本文主要探讨了C++中的一个重要概念——指向指针的指针变量。在C++编程中,指针是一种特殊的变量,它存储了另一个变量的内存地址。而指向指针的指针(二级指针)则是指针的进一步扩展,它存储了指针变量的地址,从而允许我们间接访问原始变量。 首先,我们看到一个简单的例子: ```cpp int i; // 定义一个整型变量i int* p; // 定义一个指向整型的指针p p = &i; // 指针p存储i的地址 ``` 这里,`p`是一个指向整型变量`i`的指针,它的值是`i`的内存地址。接下来,引入了指向指针的指针`prt`: ```cpp int **prt; ``` `prt`是一个指向指针的指针,它的基类型是`int*`,即它指向的是一个指向整型数据的指针。可以这样使用`prt`: ```cpp prt = &p; // prt存储p的地址 ``` 这样,`prt`就指向了`p`,而`p`又指向`i`,因此可以通过`*(*prt)`来访问`i`的值。 C++语言的发展历程也在内容中提及。C++起源于C语言,由贝尔实验室的Dennis Ritchie和Brian Kernighan设计。C++在C的基础上进行了扩展,引入了面向对象的特性,增强了语言的功能性和灵活性。C语言的特点包括结构化、高效、可移植性好以及语法相对宽松,这使得C++能够适应各种复杂的编程需求。 C++的特性包括: 1. 结构化编程:C++支持结构化编程,使代码组织清晰,易于理解和维护。 2. 高级与低级语言特性结合:丰富的运算符和位运算功能,使得C++在处理底层细节时表现出色。 3. 可移植性:C++程序可以在不同的计算机系统上运行,只需少量或无需修改。 4. 灵活的语法:虽然这可能导致语法不那么严格,但也给予程序员很大的设计自由度。 然而,C++的学习曲线相对较陡,特别是对于初学者,由于其强大的功能和自由度,调试程序可能更具挑战性。熟练掌握C++需要深入理解其语法规则和编程思想。 指向指针的指针变量是C++中一种高级的数据类型,用于实现更复杂的内存管理和数据结构,如动态数组、链表等。理解和使用这种数据类型是C++高级编程的关键技能之一。