인프런 커뮤니티 질문&답변
recur함수 중에서 질문 있습니다.
작성
·
182
0
안녕하세요. 강의 중 질문이 있어서 글 남겼습니다.
void recur(int x){
if(x==0){
return;
}
else {
recur(x-1);
printf("%d",x);
}
}
코드에서 recur(x-1) 대신에 recur(--x)를 넣으면 0부터 x-1까지 출력되는데, 그 이유가 무엇인지 잘 모르겠습니다.
감사합니다.
답변 1
0
김태원
지식공유자
recur(x-1)은 x값은 그대로 있고 다음함수로 x보다 1 작은 값을 전달하는 것이고,
recur(--x) 는 x값이 1작아지고 1작아진 x값이 다음함수로 전달되는 것입니다.
즉 recur(--x)는 해당 함수에서 x값 자체가 1작아지고 그 아래서 1작아진 x를 출력하는 것입니다.





