C언어 함수 프로토타입
코딩C언어
읽는데 2분 소요
처음 쓰여진 날: 2026-03-18
마지막 수정일: 2026-03-18
조회수: 2
요약
C언어 함수 프로토타입(Function Prototype)의 개념과 사용법을 알아봅니다. 함수 선언과 정의의 차이, 프로토타입이 필요한 경우를 정리합니다.
함수 프로토타입 핵심 정리
| 개념 | 설명 |
|---|---|
| 함수 프로토타입 | 함수의 반환형, 이름, 매개변수 타입만 미리 선언하는 것 |
| 필요한 이유 | C언어는 위에서 아래로 읽으므로, 함수 정의가 호출보다 아래에 있으면 컴파일러가 함수를 모름 |
| 작성 방법 | 함수 정의에서 본문을 빼고 세미콜론(;)으로 끝냄 |
함수 프로토타입이란?
함수 프로토타입(Function Prototype) 은 함수를 미리 선언하는 것입니다. "이런 함수가 아래에 있으니 사용해도 된다"고 컴파일러에게 알려주는 역할입니다.
prototype은 "원형", "시제품"이라는 뜻입니다. 제품을 만들기 전에 미리 만드는 시제품처럼, 함수의 전체 코드를 작성하기 전에 이름, 매개변수, 반환형만 미리 알려주는 것이 함수 프로토타입입니다.
프로토타입 없이 사용하는 경우
함수 정의가 호출보다 위에 있으면 프로토타입 없이도 정상 작동합니다.
c
코드 하이라이팅 중...
프로토타입이 필요한 경우
함수 정의가 호출보다 아래에 있으면, 컴파일러가 함수를 모르기 때문에 프로토타입이 필요합니다.
c
코드 하이라이팅 중...
프로토타입 작성 방법
함수 정의에서 본문을 빼고 세미콜론(;)만 붙이면 됩니다.
c
코드 하이라이팅 중...
| 구분 | 형태 | 본문 | 세미콜론 |
|---|---|---|---|
| 프로토타입 (선언) | int gamja(int a, int b); | 없음 | 있음 |
| 함수 정의 | int gamja(int a, int b) { ... } | 있음 | 없음 |
시험에서는 프로토타입이 생략된 경우가 많습니다
정보처리기사 실기에서는 함수 정의가 main보다 위에 있는 코드가 대부분이라 프로토타입이 나오지 않는 경우가 많습니다. 하지만 프로토타입이 등장하면 '아래쪽에 함수 정의가 있구나'라고 이해하면 됩니다.