函数中的返回数组我有一个数组int arr[5]传递给函数的fillarr(int arr[]):int fillarr(int arr[]){
for(...);
return arr;}如何返回数组?我将如何使用它,假设我返回了一个指针,我将如何访问它?
3 回答
神不在的星期二
TA贡献1963条经验 获得超6个赞
arr
int fillarr(int arr[])
int fillarr(int* arr)
int* fillarr(int arr[])
int main(){ int y[10]; int *a = fillarr(y); cout << a[0] << endl;}
梦里花落0921
TA贡献1772条经验 获得超6个赞
int *fillarr( int arr[] ) { // arr "decays" to type int * return arr;}
int ( &fillarr( int (&arr)[5] ) )[5] { // no decay; argument must be size 5 return arr;}
array< int, 5 > &fillarr( array< int, 5 > &arr ) { return arr; // "array" being boost::array or std::array}
array
struct
扬帆大鱼
TA贡献1799条经验 获得超9个赞
int (&fn1(int (&arr)[5]))[5]{ // declare fn1 as returning refernce to array return arr;}int *fn2(int arr[]){ // declare fn2 as returning pointer to array return arr;}int main(){ int buf[5]; fn1(buf); fn2(buf);}
- 3 回答
- 0 关注
- 501 浏览
添加回答
举报
0/150
提交
取消