【发布时间】:2011-01-13 08:03:12
【问题描述】:
我正在设计一个递归算法:
int f(int[] a, int[] b){
----changing a here
----changing b here
f(a,b)
----writing a here
----writing b here
}
我知道所有数组都是指针,所以这段代码应该有问题。在所有递归调用完成后,它将写入 a 和 b 的最终值。我不希望这种情况发生。
我应该怎么做才能将该数组作为常规“按值传递”传递给递归调用?
PS:数组可以在递归调用中的任何地方动态分配或调整大小等。
【问题讨论】:
-
不知道你在这里做什么。
-
“数组可以动态分配调整大小等” - 在 C 中 ????不是我不想帮忙——我愿意,但问题不是很清楚。您能否再解释一下,我们会尽力提供帮助。谢谢。
-
如果
a和b是数组,您不能调整它们的大小。有关详细信息,请参阅我的答案。 “改变”和“写作”是什么意思?