64,643
社区成员
发帖
与我相关
我的任务
分享
int* change(int* a, int* b) {
*a = *a + *b;
*b = *a - *b;
*a = *a - *b;
int result[2];
result[0] = *a;
result[1] = *b;
//cout<<sizeof(result)<<endl; //结果为8,设此处为1
return result;
}
int main(int argc, char* argv[])
{
int a = 5, b = 6;
int* e = change(c, d);
//cout<<sizeof(result)<<endl; //结果为4,设此处为2
cout<<e[0]<<" "<<e[1]<<endl;
return 0;
}
int* e = change(c, d);//哪里来的cd,你都没有声明它的存在
1,sizeof(result)的确是2*4=8.
2,局部数组离开函数就不能使用了.