在c++中返回數組

來自網絡

typedef struct
{
 float a[10];
}RETA;


RETA retArray()
{
 RETA x;
 //int i=0;
 //for(i=0;i<10;i++)
  x.a[0]=0.1;
  x.a[1]=0.2;
 return x;
}

int main()
{

 //int b[10];
 //b=retArray().a;
 //cout<<b[5]<<endl;
 //或者這樣調用
 RETA y=retArray();
 cout<<y.a[0]<<endl;
 cout<<y.a[1]<<endl;
 //printf("%d\n",y.a[3]);
 getchar();
 return 0;

}

 

 

float *array()
{
 float a=0.1;
 float b=0.2;
 float* c=new float[5];

//static float c[2]={a,b};
 c[0]=a;
 c[1]=b;
 return c;
}
int main()
{
 float *d=array();
 cout<<"d[0]="<<d[0]<<endl;
 cout<<"d[1]="<<d[1]<<endl;
 delete[] d;

d=NULL;//
 getchar();
}

實驗可行,但是可能還有其他方法,只是自己學習之用,以便後面查閱。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章