프로그래밍언어/C언어[Error]
[C언어][Error] 037. too few arguments to function – 함수 인자 수가 부족함
about_IT
2025. 4. 27. 17:03
728x90
이 오류는 함수 호출 시 요구되는 매개변수보다 적은 수의 인자를 전달했을 때 발생합니다. C언어에서는 함수가 정의된 매개변수의 수만큼 인자를 모두 전달해야 하며, 일부라도 누락될 경우 컴파일러는 오류를 발생시킵니다.
특히 함수 선언과 정의를 참조하지 않고 함수를 호출하거나, 인자의 수를 잘못 이해한 경우에 자주 나타납니다.
● 오류 예제
#include <stdio.h>
void print_sum(int a, int b) {
printf("합계: %d\n", a + b);
}
int main() {
print_sum(5); // 오류: 인자 1개 부족
return 0;
}
컴파일러는 다음과 같은 오류를 출력합니다.
error: too few arguments to function ‘print_sum’
● 해결 방법
함수를 호출할 때는 정의된 매개변수 개수에 맞춰 정확한 수의 인자를 전달해야 합니다.
#include <stdio.h>
void print_sum(int a, int b) {
printf("합계: %d\n", a + b);
}
int main() {
print_sum(5, 10); // 올바른 호출
return 0;
}
출력 결과:
합계: 15
● 실전 팁
- 함수 호출 시 인자 수와 타입을 함수 선언과 정확히 일치시켜야 합니다.
- 인자 누락이 자주 발생한다면, 함수 사용 시 헤더 파일 또는 선언부를 먼저 확인하는 습관을 들이세요.
- 함수 프로토타입이 없는 상태에서는 인자 개수 체크가 제대로 이루어지지 않을 수 있으니, 항상 선언을 함께 작성하는 것이 안전합니다.
인자의 개수가 부족한 함수 호출은 프로그램의 실행에 치명적인 오류를 유발할 수 있으므로, 함수 호출부와 선언부를 일관되게 유지하는 것이 중요합니다.
728x90