C programming

함수 스코프와 재귀 추적표

main에서 시작해 인수 복사, 지역 범위, static 유지, return까지 한 줄씩 확인합니다.

추적 순서
01

main

프로그램 흐름의 시작점을 잡고 호출 위치를 표시합니다.

02

call

인수 값이 매개변수로 복사되는지 주소가 넘어가는지 확인합니다.

03

범위

지역 변수와 전역 변수 중 어느 이름이 보이는지 판단합니다.

04

static

함수 안에 있어도 다음 호출까지 값이 남는 변수를 따로 추적합니다.

05

return

반환값이 호출식으로 돌아가는 순간을 기록합니다.

판단 포인트

함수 호출

정의만으로는 실행되지 않고, 호출식이 있어야 인수와 매개변수가 연결됩니다.

값 전달

복사본이 함수 안으로 들어가므로 일반 변수 원본은 바뀌지 않습니다.

포인터 전달

주소를 받은 함수는 역참조로 호출자 쪽 값을 바꿀 수 있습니다.

변수 범위

같은 이름이면 가까운 지역 변수가 우선이며 블록 밖에서는 사라집니다.

재귀 함수

종료 조건과 더 작은 문제 호출이 함께 있어야 스택이 멈춥니다.

exam cue

시험 코드는 main, 인수 매핑, 지역 변수, static 값, return 순서로 표를 만들면 헷갈림이 줄어듭니다.