return返回值哪里的语法逻辑没懂,括号多

img

return fibonacci(n-1) + fibonacci(n-2) ;

return 后面是一个表达式,大概可以分为三块,函数调用:fibonacci(n-1)、运算符:+、函数调用:fibonacci(n-2),函数调用 fibonacci(n-1) 中参数 n-1 又是一个表达式。

代码执行时先计算函数调用的参数,然后调用函数,最后将两个函数的值相加,拆分后可以按照下面的代码理解。

int a = n - 1 ;
int b = n - 2 ;
int c = fibonacci(a) ;
int d = fibonacci(b) ;
int e = c + d ;
return e ;

如有帮助,请采纳。