【发布时间】:2020-08-11 03:07:28
【问题描述】:
#include<stdio.h>
int arr2[100]={0};
void performTask(int arr1[])
{
for(i=1;i<50;i++)
{
arr1[i]=arr1[i]+arr1[i-1];
}
printf("\n%d %d",arr1[48],arr1[49]);
}
int main()
{
for(int i=0;i<50;i++)
arr2[i]=i;
performTask(arr2);
for(int i=0;i<50;i++)
printf("\n%d ",arr2[i]);
}
当在 performTask() 函数中对 arr1 数组执行某些操作时,原始数组(即 arr2)也被操作。 如何更改此代码,以便在调用 performTask() 函数时 arr2 值保持不变?
【问题讨论】: