C语言教程:指针数组和指向指针的指针解析

需积分: 20 2 下载量 96 浏览量 更新于2024-07-14 收藏 2.35MB PPT 举报
"这篇文档是关于C语言教程的一部分,重点讲解了指针数组和指向指针的指针的概念,同时也包含了计算机发展史的相关内容。作者是陈惠鹏,来自哈尔滨工业大学计算机学院。" 在C语言中,指针数组和指向指针的指针是两个重要的概念,它们在处理复杂的数据结构和内存管理时非常有用。 1. 指针数组: 指针数组是由指针数据类型组成的数组。在C语言中,定义一个指针数组的语法是 `类型名 *数组名[数组长度]`。例如,`int *p[4]` 定义了一个包含4个整型指针的数组。需要注意的是,这里的`*`是表示指针,而不是解引用操作,因此它应该放在类型名前面,而不是数组名前面。这样的数组可以用来存储一系列相同类型的指针,比如存储多个整型变量的地址。在示例中,`char *name[]` 是一个字符指针数组,可以用来存储字符串的地址,例如 `"BASIC"`, `"Fortran"`, `"C Language"` 和 `"Data Struct"`。 2. 指向指针的指针: 指向指针的指针是一个指针,它存储的不是普通变量的地址,而是另一个指针的地址。在C语言中,定义指向指针的指针的语法较为复杂,如 `类型名 **双引号指针名`。例如,`int **pp` 表示`pp`是一个指针,它指向一个`int`类型的指针。这种数据类型在动态内存分配和多级指针操作中常见,可以实现更灵活的数据结构。 3. 计算机发展史: 文档中也提到了计算机发展的历程,从最早的电子管计算机ENIAC到现代的个人计算机,包括IBM、Intel、Microsoft和Apple等公司在计算机发展中的重要作用。其中,IBM在1981年推出了第一台个人计算机IBM PC XT,Intel则推出了8080 CPU,奠定了8位CPU的标准。此外,文档还提及了计算机的几个发展方向,如巨型化、微型化、多媒体化和智能化。 4. C语言编程基础: 文档涵盖了C语言的基本概念,包括数据类型、基本数据类型、构造数据类型、结构程序设计、选择结构、循环结构、函数和文件等内容。这些都是学习C语言的基础,对于理解指针数组和指向指针的指针的概念至关重要。 在实际编程中,理解并熟练掌握指针数组和指向指针的指针可以帮助编写更高效、更灵活的代码,特别是在处理字符串、动态内存分配以及复杂数据结构(如链表、树等)时。通过这些知识,程序员可以更好地控制程序的内存管理和数据操作,提高程序的性能和可维护性。