함수를 정의했다면, 이제 그 함수를 실제로 사용하는 방법을 알아야겠죠.
C언어에서 함수를 실행하는 행위를 함수 호출(call)이라고 합니다.
함수 호출은 함수 이름 뒤에 괄호를 붙여 실행하며, 괄호 안에는 필요한 값(매개변수)을 넣을 수 있습니다.
● 함수 호출의 기본 형태
함수이름();
예시:
void say_hello() {
printf("Hello!\n");
}
int main(void) {
say_hello(); // 함수 호출
return 0;
}
정의된 함수 이름을 그대로 쓰고, 괄호를 붙이면 해당 함수가 실행됩니다.
● 매개변수가 있는 함수 호출
void print_age(int age) {
printf("나이: %d세\n", age);
}
int main(void) {
print_age(25); // 25 전달
return 0;
}
호출할 때 괄호 안에 값을 넣으면, 정의된 매개변수로 전달됩니다.
● 반환값을 받는 함수 호출
int double_number(int n) {
return n * 2;
}
int main(void) {
int result = double_number(5); // result = 10
printf("2배: %d\n", result);
return 0;
}
함수가 값을 반환하면, 변수에 저장하거나 바로 사용할 수 있습니다.
함수는 정의만 해놓고 호출하지 않으면 실행되지 않습니다.
함수 이름 뒤에 괄호를 붙여 정확하게 호출해야 원하는 동작이 수행됩니다.
이제 실습 문제로 함수 호출을 제대로 익혀봅시다!
● 실습 문제
문제 1
인사말을 출력하는 hello 함수를 호출하세요.
문제 2
정수 100을 print_number 함수에 전달하여 출력하세요.
문제 3
두 수 4와 7을 더한 값을 add 함수로 구하고, 결과를 출력하세요.
문제 4
사용자로부터 입력받은 수의 제곱을 square 함수로 계산하고 출력하세요.
문제 5
함수를 정의했지만 호출하지 않으면 어떤 일이 일어나는지 설명해보세요.
▶ 정답 확인하기
정답 1
void hello() {
printf("안녕하세요!\n");
}
int main(void) {
hello();
return 0;
}
정답 2
void print_number(int n) {
printf("숫자: %d\n", n);
}
int main(void) {
print_number(100);
return 0;
}
정답 3
int add(int a, int b) {
return a + b;
}
int main(void) {
int sum = add(4, 7);
printf("합계: %d\n", sum);
return 0;
}
정답 4
int square(int x) {
return x * x;
}
int main(void) {
int num;
printf("정수 입력: ");
scanf("%d", &num);
int result = square(num);
printf("제곱: %d\n", result);
return 0;
}
정답 5
정의만 되어 있는 함수는 main 함수에서 호출하지 않으면 실행되지 않습니다.
즉, 코드에 존재해도 실행 결과에 아무런 영향을 주지 않습니다.
'프로그래밍언어 > C언어[초급]' 카테고리의 다른 글
[C언어][초급] Chapter36. 함수의 반환값 – 함수가 결과를 되돌려주는 방법 (2) | 2025.04.18 |
---|---|
[C언어][초급] Chapter35. 함수의 매개변수 – 함수에 값을 전달하는 방법 정리 (0) | 2025.04.18 |
[C언어][초급] Chapter33. 함수 정의 방법 – 반복되는 코드를 깔끔하게 정리하는 법 (0) | 2025.04.18 |
[C언어][초급] Chapter32. 중첩 반복문 – 반복문 안에 반복문을 넣어 사용하는 방법 (0) | 2025.04.18 |
[C언어][초급] Chapter31. continue문 사용법 – 반복문에서 현재 반복만 건너뛰기 (0) | 2025.04.17 |