0
如果我们不想在main
函数中更改数组的值,我们该怎么办? 例如:如果我们将一个数组传递给C中的函数,它是否总是通过引用传递?
int func(int a[])
{
------
---
}
int main()
{
int a[100];
for (i = 0; i < 100; i++)
scanf("%d", &a[i]);
func(a);
}
在这个例子中,我们把在main
功能的数组中的值会被替换的func
功能。如何避免这种情况?
您需要对阵列进行深层复制。 http://stackoverflow.com/questions/4054075/how-to-make-a-deep-copy-of-an-array –
@JohnBaird为什么你引用C#关于这个话题的问题? –
@zev你的意思是,你不希望数组的值在'main'之外改变,对吧? –