第14章 C对C的扩充d培训讲学.pptVIP

  • 2
  • 0
  • 约9.01千字
  • 约 54页
  • 2019-10-22 发布于天津
  • 举报
14.6.3 引用作为函数参数 有了变量名,为什么还需要一个别名呢?C++之所以增加“引用”, 主要是把它作为函数参数,以扩充函数传递数据的功能。 在C语言中,函数的参数传递有以下两种情况。 (1) 将变量名作为实参。这时传给形参的是变量的值。传递是单向的,在执行函数期间形参值发生变化并不传回给实参,因为在调用函数时,形参和实参不是同一个存储单元。下面的程序无法实现两个变量的值互换。 例14.6 错误的程序。 #include iostream.h void swap(int a, int b) {int temp; temp=a; a=b; b=temp; //实现a和b的值互换 } void main( ) {int i=3,j=5; swap(i,j); couti,jendl; //i和j的值未互换 } 输出i和j的值仍为3和5。见图14.2示意。图14.2(a) 表示调用函数时的数据传递,图14.2(b) 是执行swap函数体后的情况,a和b值的改变不会改变i和j的值。 为了解决这个问题,在第10章介绍了传递变量地址的方法。 图14.2 (2) 传递变量的指针。使形参得到一个变量的地址,这时形参指针变量指向实参变量单元。见例14.7。 例14.7 使用指针变量作形参,实现两个变量的值互换。 #include iostream.h void s

文档评论(0)

1亿VIP精品文档

相关文档