55. 함수 매개변수
1. 키워드
- 매개변수(Parameter)
- 인수(Argument)
2. 함수에서 매개변수 사용하기
- 함수 매개변수의 다양한 사용 방법을 알아보자.
3. 매개변수 사용하기
- 매개변수를 사용하려면 함수를 정의할 때
()
(괄호) 안에 자료형과 변수 이름을 지정해 주면 된다.
#include <stdio.h>
void helloNumber(int num1) // 반환값 없음, int 타입 매개변수 한 개 지정
{
printf("Hello, %d\n", num1); // "Hello, "와 매개변수를 조합하여 문자열 출력
}
int main()
{
helloNumber(10); // helloNumber에 10을 넣어서 호출
helloNumber(20); // helloNumber에 20을 넣어서 호출
return 0;
}
// Hello, 10
// Hello, 20
- 먼저 함수를 정의할 때
()
안에int num1
과 같이 자료형과 매개변수를 지정한다. - 이렇게 하면 함수를 호출할 때 넣은 값이 매개변수에 저장된다.
- 여기서는
printf
로"Hello, "
문자열을 출력하면서 서식 지정자%d
로 매개변수의 값을 함께 출력한다.
void helloNumber(int num1) // 반환값 없음, int 타입 매개변수 한 개 지정
{
printf("Hello, %d\n", num1); // "Hello, "와 매개변수를 조합하여 문자열 출력
}
helloNumber
함수에10
을 넣어서 호출하면10
이 매개변수를 통해 전달되므로printf
로 출력했을 때"Hello, 10"
이 나온다.- 마찬가지로
20
을 넣으면"Hello, 20"
이 출력된다.
int main()
{
helloNumber(10); // helloNumber에 10을 넣어서 호출
helloNumber(20); // helloNumber에 20을 넣어서 호출
return 0;
}
4. 덧셈 함수 만들기
- 이번에는 매개변수를 사용하여 두 정수를 더한 결과를 반환하는 함수를 만들어보자.
- 함수에서 매개변수를 여러 개 사용하려면 각 매개변수를
,
(콤마)로 구분한다.
#include <stdio.h>
int add(int a, int b) // 반환값 자료형은 int, int 타입 매개변수 두 개 지정
{
return a + b; // 매개변수 a와 b를 더한 결과를 반환
}
int main()
{
int num1;
num1 = add(10, 20); // 함수를 호출할 때 10과 20을 전달. 10과 20을 더한 값인 30이 반환됨
printf("%d\n", num1);
return 0;
}
// 30
- 먼저 함수를 정의할 때
()
안에int a
와int b
를 지정한다. - 이렇게 하면 함수를 호출했을 때 넣은 값이
a
와b
에 순서대로 저장된다. - 그리고
{}
(중괄호) 안에서는a
와b
를 더하여 반환한다.
- 함수를 호출할 때
()
안에10
과20
을 넣어주면 반환값으로30
이 나온다. - 단, 함수에 정의된 매개변수 개수만큼 값을 넣어야 하며, 적거나 많게 넣을 수는 없다.
- 이처럼 매개변수를 사용해서 간단하게 두 정수를 더할 수 있다.
매개변수와 인수
- 매개변수는 함수 바깥에서 전달된 값이 저장되는 변수를 뜻한다.
- 인수는 함수를 호출할 때 전달하는 값이나 변수를 뜻한다.