본문 바로가기
XR개발/C언어

03_Q&A 변수랑 매개변수의 차이에 대한 물음.zip

by 오머리쿠_OmaryKoo 2025. 1. 22.

Q1. 변수와 매개변수의 차이는?

변수(Variable)란?

"데이터를 저장하는 상자"
"내가 내 주머니에 돈을 넣어두고 쓰는 것"
(내가 직접 값을 넣고 저장하는 개념)

 

✔ 프로그램에서 값을 저장하는 공간
✔ 숫자, 문자, 문자열 등 다양한 값을 저장 가능
✔ 언제든 값을 바꿀 수 있음

✔ 변수를 만들고(int x = 10;), 그 값을 사용함.
✔ 값은 직접 지정하거나 수정할 수 있음.


매개변수(Parameter)란?

"함수에게 값을 전달하는 특별한 변수"
"친구한테 돈을 받아서 사용하는 것"
(함수 바깥에서 값을 전달받아 사용)

 

✔ 함수가 실행될 때 외부에서 값을 받아서 사용하는 변수
✔ 함수 내부에서만 사용됨

✔ 이 값은 함수 호출 시 결정됨.

✔ printScore(100); → 100이라는 값을 함수로 전달
✔ int score → 함수가 전달받은 값을 저장하는 매개변수

✔ 전달받은 숫자: 5 전달받은 숫자: 10
 

 

매개변수의 역할

① printNumber(5); → 함수가 5를 전달받아 출력
② printNumber(10); → 함수가 10을 전달받아

③ 함수 안에서 int num이 값을 저장하는 역할을 함


변수와 매개변수의 차이

  변수 (Variable) 매개변수 (Parameter)
정의 프로그램에서 값을 저장하는 공간 함수를 호출할 때 값을 전달받는 변수
어디에서 사용? 함수 안, 함수 밖 어디서든 사용 가능 함수 안에서만 사용됨
값을 어떻게 받음? 직접 값을 넣음 (int x = 10;) 함수 호출 시 값을 받음 (myFunction(5);)
예제 int age = 20; void showAge(int age) {}

 


Q2. 매개변수는 왜 필요한가?

매개변수가 없다면, 함수를 사용할 때마다 새로운 코드를 써야 한다.
하지만 매개변수를 사용하면 같은 함수를 여러 값으로 재사용 가능하다.

매개변수 없이 작성한 코드 (비효율적)

 

매번 printf()를 새로 써야 해서 비효율적

 

 

매개변수를 활용한 코드 (효율적)

 

함수 하나(printAge())를 여러 번 재사용할 수 있다.
매개변수(int age) 덕분에 다양한 값을 넣을 수 있다.


변수: "내가 직접 값을 저장해서 사용한다."
매개변수: "함수가 실행될 때 외부에서 값을 전달받아 사용한다."
매개변수를 사용하면 같은 함수를 여러 값으로 재사용 가능하다.

 

 변수 = 프로그램에서 값을 저장하는 일반적인 상자
 매개변수 = 함수가 실행될 때 외부에서 전달받아 사용하는 특별한 변수

 

 

728x90