본문 바로가기
프로그래밍/C언어

[프로그래밍] 인수/인자(Arguments)와 매개 변수(Parameter) 차이

by virusuk 2023. 2. 19.
반응형

프로그래밍 하면서 많이 헷갈리시는 인수와 인자 그리고 매개변수의 차이에 대해 알려드리겠습니다.

 

인수(Arguments)? 우리말로 인수(인자)를 뜻하며, 함수를 호출하는 변수를 의미합니다.

매개 변수(Parameter)? 함수를 선언할 때, 괄호 안에 사용되는 변수를 의미합니다.

 

Arguments와 Parameter 사용 예)

- main함수 안에 add(x, y) 함수를 호출할 때 사용되는 x, y값은 인수(인자)를 뜻하며, add함수 내의 선언된 변수는 인수(인자)값을 받기 위해 선언된 변수를 매개 변수라고합니다.

#include <stdio.h>

int add(int a, int b)	// (add: 함수이름), (int a, int b: 매개변수)
{
    printf("%d ", a + b);
}

void main()
{
    int x=15, y=20;

    add(x, y);		// add함수를 호출하는 (x, y: 인수(인자))
}

 

오라클 공식 문서를 따르면, 다음과 같습니다.
Note:
 Parameters refers to the list of variables in a method declaration. Arguments are the actual values that are passed in when the method is invoked. When you invoke a method, the arguments used must match the declaration's parameters in type and order.

https://docs.oracle.com/javase/tutorial/java/javaOO/arguments.html

-> 즉, 인수는 메소드가 전달될 때 실제 값이고, 매개변수는 메소드를 선언할 때 사용되는 변수이다.

 

결론은, 인자와 인수는 같은 말이며, 매개변수와 차이에 대해 설명하였습니다. 함수를 호출할 때 전달하는 값은 인수(인자)이고, 함수 정의에서 전달 받은 인수를 함수 내부에 사용하는 변수를 의미한다는 것을 꼭 알고 계세요.!!

반응형