C++指针与函数—指针作为参数和返回值

2020-01-06 12:16:04王旭
指针在函数中的使用也是十分广泛的。某些情况下,将指针作为函数的参数或函数的返回值会给我们带来方便。而某些情况下,我们又不得不将指针作为函数的参数或函数的返回值。

指针作为参数

我们在上一章我们已经了解向函数传递数组的实质是向函数传递数组首元素的地址。我们又知道数组名是一个指向数组首元素的指针常量。所以我们认为,向函数传递数组是将指针作为参数的特殊形式。

由于指针可以直接操作内存中的数据,所以它可以用来修改实参。这个功能和引用是类似的。

下面我们来看一段程序,了解指针作为参数时的上述两个特点:(程序8.6.1)
#include "iostream.h"
void arrayCopy(int *src,int *dest,int size);//复制数组元素
void display(const int *array,int size);//输出数组元素
int main()
{
   int a[]={3,4,5,6,3,1,6};
   int b[7];
   arrayCopy(a,b,sizeof(a)/sizeof(int));//把数组a的元素依次复制到数组b中