我是 C++ 的初学者。昨天我读到了递归函数,所以我决定自己写。这是我写的:
int returnZero(int anyNumber) {
if(anyNumber == 0)
return 0;
else {
anyNumber--;
return returnZero(anyNumber);
}
}
当我这样做时:int zero1 = returnZero(4793);
,它会导致堆栈溢出。但是,如果我将值 4792 作为参数传递,则不会发生溢出。
关于为什么的任何想法?