考虑:
int sum(const int numbers[], const int size){
if (size == 0)
return 0;
else
return numbers[0] + sum(numbers+1, size-1);
}
这是MIT 6.096课程中一个简单的递归函数,用于对任意数量的整数进行求和,并且它可以正常运行。
我不理解的是最后一行:
鉴于numbers[]
是一个int
数组,您不应该能够将整数添加到int[]
常量中,那么numbers+1
是如何工作的呢?