recursion(-t);//明明递归recursion(0)递归进入函数,t==0,return了,为啥还会执行打印呢?解决思路

recursion(--t)//明明递归recursion(0)递归进入函数,t0,return了,为啥还会执行打印呢?#include iostre

recursion(--t);//明明递归recursion(0)递归进入函数,t==0,return了,为啥还会执行打印呢?
#include <iostream>
#include <iomanip>
using namespace std;

void recursion(int t)
{
  if(t==NULL) return;
  cout<<"hello recursion"<<endl;
  recursion(--t);//明明递归recursion(0)递归进入函数,t==0,return了,为啥还会执行打印呢?
}

int main()
{
  recursion(1);
}


[解决办法]

C/C++ code
#include <iostream>#include <iomanip>using namespace std;void recursion(int t){  //改一下,if(t==NULL) return;    if(t == 0) return        cout<<"hello recursion"<<endl;    recursion(--t);//明明递归recursion(0)递归进入函数,t==0,return了,为啥还会执行打印呢?}int main(){    recursion(1);    return 0;}