함수의 실행 흐름과 함수 원형 — 호출과 복귀·print_line 함수·Function Prototype | 기초 C언어 9.1.2-2

기초 C언어Chapter 09 함수 › Section 01 함수의 기본 이해

9.1.2-2 실행 흐름과 함수 원형

main에서 시작해 호출된 함수로 갔다가 돌아오는 실행 흐름. main 뒤에 정의한 함수를 호출하기 위해 앞에 먼저 쓰는 함수 원형.

교재 수록 위치
교재
『기초 C언어』 · 이은상 · 부크크 · 364쪽
단원
Chapter 09 함수 › Section 01 함수의 기본 이해 › 실행 흐름과 함수 원형
쪽수
273p ~ 275p3쪽
세부 내용
함수의 실행 흐름 · CODE 9.5 · 함수 원형 · CODE 9.6
학습 목표
함수 호출 시 실행 흐름의 이동과 복귀를 이해하고, 함수 원형의 필요성과 작성 요소를 설명함
영상 목차 · 원하는 부분부터 보기
  1. 0:00 · 강의 소개와 함수 실행 흐름
  2. 1:07 · 선 출력 함수 예제
  3. 3:14 · 두 함수를 오가는 실행 순서
  4. 5:17 · 원형을 먼저 쓰는 예제
  5. 7:27 · 원형·호출·정의 비교
  6. 8:21 · 핵심 정리

01호출하면 갔다가 돌아오는 흐름교재 273p

  • 앞 편 CODE 9.4에서는 main이 add(5, 3)을 만나 add 함수로 이동했다가 반환값을 들고 돌아옴. 이번 편은 그 실행 흐름 자체와 함수 원형.
  • C 프로그램은 main 함수에서 실행을 시작. 2.1.3에서 본 시작점과 같은 뜻.
  • 실행 중 함수 호출문을 만나면 실행 흐름은 호출된 함수로 이동하고, 그 함수가 끝나면 호출했던 위치로 돌아옴.

02CODE 9.5 — print_line 함수교재 274p

  • 선을 출력하는 printf 하나를 묶은 void형 print_line 함수와, 시작 문구·호출문·종료 문구를 차례로 둔 main 함수로 이루어진 예제.
  • print_line은 호출된 함수, main은 호출하는 쪽. 이름 속 밑줄은 4.1.2에서 본 대로 식별자에 쓸 수 있는 문자. 상세 코드는 교재 CODE 9.5.

03시작 → 선 → 종료의 출력 차례교재 274p

  • 실행 결과는 프로그램 시작 / 빼기 기호를 이은 선 / 프로그램 종료의 세 줄.
  • 맨 위 줄과 맨 아래 줄은 main이, 가운데 선은 print_line 안의 printf가 출력한 결과.
  • 동작 순서는 main 실행 → 시작 문구 출력 → print_line 호출 → 선 출력 → main으로 복귀 → 종료 문구 출력.

코드의 위치가 아니라 실행 흐름의 차례

print_line의 정의가 main보다 위에 적혀 있어도 먼저 출력되지 않음. 실행은 언제나 main에서 시작하고, 정의된 함수는 호출되는 순간에만 실행되므로 출력은 실행 흐름의 차례를 그대로 따름.

04함수 원형(Function Prototype)교재 275p

  • C언어에서는 함수를 호출하기 전에 컴파일러가 함수의 형태를 알고 있어야 함. 컴파일러는 코드를 첫 줄부터 차례로 읽기 때문.
  • main 함수보다 뒤쪽에 함수를 정의할 때는 main 앞에 함수 원형을 먼저 작성. 함수의 형태를 미리 알려 주는 선언.
  • 원형은 정의의 첫 줄과 같은 꼴이지만 중괄호 몸체 대신 세미콜론으로 끝남.
원형에 작성하는 것CODE 9.6의 예
반환 자료형int
함수 이름add
매개변수 자료형int a, int b

05CODE 9.6 — 원형 먼저, 정의는 나중교재 275p

  • main 앞에 int add(int a, int b); 원형을 두고, main 안에서 add(10, 20)을 호출하며, add의 정의는 main 뒤에 둔 예제. 실행 결과는 result: 30. 상세 코드는 교재 CODE 9.6.
  • add가 나오는 세 곳의 작성 차례는 원형 → 호출 → 정의. 원형이 먼저 있으므로 정의보다 앞에서도 호출 가능.

원형은 직접 쓰는 사용 설명서

2.1.2에서 헤더 파일 속 선언을 사용 설명서에 빗댄 것처럼, 함수 원형은 직접 만든 함수의 설명서를 컴파일러에게 먼저 건네는 구실. 원형 끝의 세미콜론을 빠뜨리지 않도록 주의.

069.1 정리와 다음 편교재 273~275p

  • 실행은 main에서 시작하고, 호출문을 만나면 호출된 함수로 이동했다가 끝나면 호출했던 위치로 돌아옴.
  • main 뒤에 정의하는 함수는 main 앞에 반환 자료형·함수 이름·매개변수 자료형을 적은 원형을 먼저 작성.
  • 함수의 기본은 여기까지. 다음 편 9.2.1에서는 함수가 돌려주는 반환값과 건네받는 매개변수를 다룸.

이 절의 핵심 정리

  1. C 프로그램은 main 함수에서 실행을 시작한다.
  2. 함수 호출문을 만나면 실행 흐름은 호출된 함수로 이동하고, 함수가 끝나면 호출했던 위치로 돌아온다.
  3. 컴파일러는 함수를 호출하기 전에 그 함수의 형태를 알고 있어야 한다.
  4. main 함수 뒤에 정의하는 함수는 main 앞에 함수 원형을 먼저 작성한다.
  5. 함수 원형에는 반환 자료형, 함수 이름, 매개변수 자료형을 적고 세미콜론으로 끝낸다.
강의 자료9.1.2-2 실행 흐름과 함수 원형 1 / 10

번호를 누르면 해당 장으로 바로 이동합니다 · 방향키 ← → 로도 넘길 수 있습니다
다음 절 · 9.2.1 반환값과 매개변수 — 강의 영상 연결 후 공개 예정. C언어 강의 목록에서 공개된 강의 확인 ↗

더 자세한 내용은 교재에서

이 글은 『기초 C언어』 273p~275p의 내용을 강의 영상에 맞춰 핵심만 간추린 요약입니다. 각 개념의 상세한 설명과 예제, 실습 코드, 임용시험 기출문제 풀이는 교재에서 다루고 있습니다.

댓글

이 블로그의 인기 게시물

2007년 국가직 9급 기계일반 기출문제 풀이

기계공작법 연습문제 130문 | 임용 기출 영상·교재 쪽수 바로가기