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

来源:互联网 发布:如何引出大数据 编辑:程序博客网 时间:2024/06/05 15:17
#include <iostream>  #include <stdlib.h>  using namespace std;  //这里function是一个函数,它返回一个指针,该指针指向的是包含20个int类型元素的数组。int (*function())[20]  {      int i=0;      int (*p)[20];//声明一个指向20个元素的指针;      p=(int(*)[20])calloc(20,sizeof(int));      //或者p=(int (*)[20])malloc(sizeof(int)*20);      if(!p)//内存不够;      {          cout<<"the memory is not enough!"<<endl;          return NULL;      }      for(i=0;i<20;i++)          (*p)[i]=i+5;      return p;  }  int main()  {      int (*result)[20];      result=function();      if(result)      {          cout<<result[7]<<endl;//这样访问结果,应该输出8。          free(result);      }      system("pause");      return 0;  }  

0 0
原创粉丝点击