我是C++的新手,并且一直避免使用指针。根据我在网上读到的内容,我不能返回一个数组,但我可以返回一个指向它的指针。我写了一个小代码来测试它,我想知道这是不是正常/正确的方法:
#include <iostream>
using namespace std;
int* test (int in[5]) {
int* out = in;
return out;
}
int main() {
int arr[5] = {1, 2, 3, 4, 5};
int* pArr = test(arr);
for (int i = 0; i < 5; i++) cout<<pArr[i]<<endl;
cout<<endl;
return 0;
}
编辑:这似乎不太好。我该怎么重写呢?
int* test (int a[5], int b[5]) {
int c[5];
for (int i = 0; i < 5; i++) c[i] = a[i]+b[i];
int* out = c;
return out;
}
https://stackoverflow.com/questions/12992925
复制相似问题