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

  1. #include

  2. #include

  3. using namespace std;

  4. //这里function是一个函数,它返回一个指针,该指针指向的是包含20个int类型元素的数组。

  5. int (*function())[20]

  6. {

  7. int i=0;

  8. int (*p)[20];//声明一个指向20个元素的指针;

  9. p=(int(*)[20])calloc(20,sizeof(int));

  10. //或者p=(int (*)[20])malloc(sizeof(int)*20);

  11. if(!p)//内存不够;

  12. {

  13. cout<<"the memory is not enough!"<

  14. return NULL;

  15. }

  16. for(i=0;i<20;i++)

  17. (*p)[i]=i+5;

  18. return p;

  19. }

  20. int main()

  21. {

  22. int (*result)[20];

  23. result=function();

  24. if(result)

  25. {

  26. cout<

  27. free(result);

  28. }

  29. system("pause");

  30. return 0;

  31. }

你可能感兴趣的:(编程)