C++函数中多维数组参数技巧与示例

需积分: 0 1 下载量 6 浏览量 更新于2024-08-19 收藏 8.66MB PPT 举报
在谭浩强的C++编程教程中,关于用多维数组名作函数参数的部分,他强调了一个关键概念:实参向形参传递的是数组的首地址。对于二维数组,形参处理方式特别值得注意。当传递二维数组时,形参可以省略第一维,但第二维的大小必须与实参中的维度保持一致,不能省略或改变。例如: ```c++ // 正确示例 void process(int score[][10], int rows) { // ... } int main() { int score[5][10]; process(score, 5); // 第一维传递具体值,第二维大小匹配 return 0; } ``` 这里,`score` 实参与 `process` 函数的形参 `int score[][10]` 相匹配,表示处理一个5行10列的矩阵。如果尝试用 `int score[ ][8]` 或 `int score[3][10]` 传递,将会导致编译错误,因为不匹配的维数会导致内存访问错误。 C++语言的发展历史也提到了C++与C的关系,C++是在C的基础上发展起来的,它继承了C的优点,如结构化编程、高效性和可移植性,同时也引入了面向对象的概念。C++语言强调了灵活性和性能,使得程序员可以在编写大型系统程序和小型控制程序时都得心应手。尽管它的语法结构相对宽松,可能对初学者造成一定的挑战,但通过深入理解和实践,编写和调试C++程序是可以掌握的。 C语言的可移植性体现在其设计之初,目标是编写跨平台的UNIX操作系统。这使得用C编写的程序能够在不同的计算机体系结构上运行,无需过多的修改。然而,由于C的灵活性,可能会带来代码的不一致性,对于不熟悉C语言的人来说,这可能需要更谨慎地处理。 总结来说,谭浩强在教学中指导学生如何正确处理多维数组作为函数参数,以及理解C++语言的历史背景和特性,这对于提高C++编程技能至关重要。通过理解和遵循规则,可以有效地避免在实际编程中出现的常见错误。