如何使用指针从函数返回一个数组。
#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;
} 声明:该文观点仅代表作者本人,入门客AI创业平台信息发布平台仅提供信息存储空间服务,如有疑问请联系rumenke@qq.com。
- 上一篇:没有了
- 下一篇:没有了
