请教一个关于递归传递值的问题!
看了一道题主函数就不打出来void max(int *a,int n,int i,int *pk)
{
if(i<n)
{
if( a[i]<a[*pk])
*pk=i;
max(a,M,++i,pk);//以前写i++调试时崩溃!
}
}
我知道i++是先取i再加一就是想问问在这些值(max(……))传递过程中,都是如何对内存单元操作的!
[ 本帖最后由 清微御宇 于 2012-4-17 15:38 编辑 ]
2012-04-17 14:00
2012-04-17 15:22
你这个递归没有终止条件?无限递归下去,崩溃了。
2012-04-17 15:35
2012-04-17 15:41