使用指针从函数返回一个数组

来源:互联网 发布:java 异常类 编辑:程序博客网 时间:2024/05/21 17:51

无法直接从函数返回一个数组。但是,可以让函数返回一个纸箱任何数据结构的指针,当然也可以是一个纸箱数组的指针。记住,声明必须在使用之前。一个声明的例子是:

int  (*paf())[20];

这里,paf是一个函数,他返回一个指向包含20个int 元素的数组的指针。它的定义可能如下:

int (*paf())[20]

{

int (*pear)[20];

pear = calloc(20,sizeof(int));

if(!pear) longjmp(error,1);

return pear;

}

你可以用下面这样的方法来调用函数:

int (*result)]20];//声明一个指向包含20个int元素的数组的指针

..

result = paf();//调用函数

(*result)[3]= 12;//访问结果数组

原创粉丝点击