为什么它不返回任何值?输出应该是 155 但它总是显示 0。为什么?
int main()
{
int i=5;
printf("%d",fun(fun(fun(fun( fun(i))))));
return 0;
}
void fun(int i)
{
if(i%2) return (i+(7*4)-(5/2)+(2*2));
else return (i+(17/5)-(34/15)+(5/2));
}
但如果我改变
void fun(int i) // It doesn't work, case 1
to
int fun(int i) //It works fine, case 2
如果 fun 在 case 1 ( void fun(int i) ) 中没有返回任何值,那怎么会
fun(fun(fun(fun( fun(i)))))); this statement is working?