Q1. 변수와 매개변수의 차이는?
변수(Variable)란?
"데이터를 저장하는 상자"
"내가 내 주머니에 돈을 넣어두고 쓰는 것"
(내가 직접 값을 넣고 저장하는 개념)
✔ 프로그램에서 값을 저장하는 공간
✔ 숫자, 문자, 문자열 등 다양한 값을 저장 가능
✔ 언제든 값을 바꿀 수 있음
✔ 변수를 만들고(int x = 10;), 그 값을 사용함.
✔ 값은 직접 지정하거나 수정할 수 있음.


매개변수(Parameter)란?
"함수에게 값을 전달하는 특별한 변수"
"친구한테 돈을 받아서 사용하는 것"
(함수 바깥에서 값을 전달받아 사용)
✔ 함수가 실행될 때 외부에서 값을 받아서 사용하는 변수
✔ 함수 내부에서만 사용됨
✔ 이 값은 함수 호출 시 결정됨.

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

매개변수의 역할
① 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) 덕분에 다양한 값을 넣을 수 있다.
✅ 변수: "내가 직접 값을 저장해서 사용한다."
✅ 매개변수: "함수가 실행될 때 외부에서 값을 전달받아 사용한다."
✅ 매개변수를 사용하면 같은 함수를 여러 값으로 재사용 가능하다.
✔ 변수 = 프로그램에서 값을 저장하는 일반적인 상자
✔ 매개변수 = 함수가 실행될 때 외부에서 전달받아 사용하는 특별한 변수
'XR개발 > C언어' 카테고리의 다른 글
05_Q&A 증감연산자는 어디에 활용되며 왜 중요한가?에 대한 물음.zip (1) | 2025.01.22 |
---|---|
04_Q&A 0으로 초기화 시키는 이유에 대한 물음.zip (0) | 2025.01.22 |
02_Q&A C언어에서 scanf, double에 대한 물음.zip (0) | 2025.01.21 |
01_Q&A C언어에서 \n에 대한 물음.zip (0) | 2025.01.21 |
C언어 수식과 연산자 (0) | 2025.01.20 |