2010년 4월 16일 금요일

재귀해도 static 변수는 계속 남아있다...

#include <stdio.h>

void dfs(int n)
{
 if(n == -1) return;
 static bool isVisited[5] = {false,}; // 재귀해도 남아있다!
 isVisited[n] = true;

 for(int i=0;i<5;i++)
  printf("%d ",(int)isVisited[i]);
 printf("\n");
 dfs(n-1);
 
}

int main(void)
{
 dfs(4);
 return 0;
}