C++中数组名与指针参数传递

需积分: 16 14 下载量 48 浏览量 更新于2024-07-13 收藏 8.57MB PPT 举报
在C++面向对象程序设计中,理解实参用数组名和形参用指针变量是至关重要的概念。在谭浩强编著的《C++程序设计》一书中,这一章节主要探讨了如何在函数调用中传递数组信息。当你看到如下的代码示例: ```cpp void main(void) { int a[10]; // 定义一个包含10个整数的数组 ... f(a, 10); // 调用函数,实参是数组a的地址(即指针),以及数组长度10 ... } f(int *x, int n ) // 函数声明,形参x是整数指针,n表示数组的元素数量 { ... } ``` 这里,`a` 是一个数组名,但在函数 `f` 中,我们传递的是 `a` 的地址(通过 `int *x` 声明的指针)。当我们在 `main` 函数中调用 `f(a, 10)` 时,实际上是将数组 `a` 的首地址(也就是第一个元素的位置)传递给了 `x`。这样做的好处是可以避免复制整个数组,节省内存,并允许函数直接操作数组内容。 C++语言发展自1972年的C语言,它继承了C语言的简洁性和灵活性,同时也提供了结构化编程的能力,支持复杂的数据结构和运算符。C++的设计初衷是为了编写系统软件,如UNIX操作系统,后来逐渐演变为广泛使用的通用编程语言。C++的主要特点包括: 1. 结构化编程:C++支持模块化和面向对象编程,使得代码组织清晰,易于维护。 2. 高级与低级特性结合:C++拥有丰富的运算符和灵活的数据类型,可以进行高效的数值计算,同时保持了类似汇编语言的底层控制能力。 3. 可移植性:C++编写的程序能在多种计算机平台上运行,无需大量修改。 4. 程序设计自由度大:这允许高级开发者创建高性能的通用程序,但也可能导致学习曲线较陡峭,初学者需要花时间理解和调试代码。 尽管C++的语法结构相对宽松,对新手来说可能有一定挑战,但深入理解语法规则和正确使用指针等概念是编写高效、可靠的C++程序的关键。因此,在实际编程过程中,掌握实参用数组名和形参用指针变量是必不可少的基础技能。