목차
매개변수 vs. 독립변수(인수)
매개변수 기본값 (= 선택적 매개변수)
여러 매개변수
함수 반환값
참조로 전달
매개변수 vs. 독립변수(인수)
[매개변수]
1.
사용자로부터 데이터 받는 입구로서, 함수 안에서 사용하는 변수.
(예) int add(int x,int y ) {...}
2.
원하는 만큼 쉼표로 연결해 나열 가능하며,
매개변수 각각에 대해 자료형 지정해야 함.
(예) int add(int x,int y,int z, .... ) {...}
3.
독립변수 (인수)가 전달 안 될 경우 대비해 기본값 지정 가능.
※ 독립변수가 전달 안 된 경우, 매개변수 기본값이 사용됨.
※ 선택적 매개변수 : 기본값 갖는 매개변수.
[독립변수 (= 인수)]
1.
함수 호출 시, 함수로 실제 전달되는 데이터. (예) add(3, 4 );
2.
선언된 매개변수 자료형에 맞는 독립변수를 전달해야 함.
[예제1] 함수가 반환값 갖는 경우.
#include <iostream>
using namespace std;
int add(int x, int y) {
return x + y;
}
int main() {
cout << add(3, 4); // 7
return 0;
}
결과값: 7
[예제2] 함수가 반환값 없이 실행만 하는 경우.
#include <iostream>
#include <string>
using namespace std;
void studyCode(string code ) {
cout << code << " 공부\n";
}
int main() {
studyCode("HTML");
studyCode("CSS");
studyCode("JS");
return 0;
}
결과값:
HTML 공부
CSS 공부
JS 공부
매개변수 기본값 (= 선택적 매개변수)
1.
= 연산자 사용해 매개변수 기본값 지정 가능.
2.
매개변수 자료형에 맞는 값을 사용해야 함.
3.
선택적 매개변수 : 기본값 갖는 매개변수.
[예제]
#include <iostream>
#include <string>
using namespace std;
void studyCode(string code = "C++") {
cout << code << " 공부\n";
}
int main() {
studyCode("HTML");
studyCode("CSS");
studyCode("JS");
studyCode(); // C++ 공부
return 0;
}
결과값:
HTML 공부
CSS 공부
JS 공부
C++ 공부
여러 매개변수
1.
쉼표(,) 이용해 원하는 만큼 매개변수 나열 가능.
2.
각각의 매개변수는 자료형 지정 해야 함.
3.
함수 호출 시 독립변수(인수)는 매개변수와 동일 개수와 순서로 함수로 전달돼야 함.
[예제] 기본값 갖는 매개변수 2개 사용.
#include <iostream>
#include <string>
using namespace std;
void studyCode(string code = "C++", int tuition = 10000) {
cout << code << " 과외 - " << tuition << "원\n";
}
int main() {
studyCode("HTML", 10000);
studyCode("CSS", 20000);
studyCode("JS", 30000);
studyCode();
return 0;
}
결과값:
HTML 과외 - 10000원
CSS 과외 - 20000원
JS 과외 - 30000원
C++ 과외 - 10000원
함수 반환값
함수가 값을 반환하도록 하려면,
함수 선언 시 void 대신 자료형 (예: string, int 등) 기재 해야 하며,
return 키워드를 이용해 값을 반환.
[예제1] 매개변수 1개인 경우.
#include <iostream>
using namespace std;
int add(int x) {
return 4 + x;
}
int main() {
cout << add(3); // 7
return 0;
}
결과값: 7
[예제2] 매개변수 2개인 경우.
#include <iostream>
using namespace std;
int add(int x, int y) {
return x + y;
}
int main() {
cout << add(3, 4); // 7
return 0;
}
결과값: 7
[예제3] 반환값을 변수에 저장.
#include <iostream>
using namespace std;
int add(int x, int y) {
return x + y;
}
int main() {
int z = add(3, 4);
cout << z;
return 0;
}
결과값: 7
[예제4] 사용자 입력값 받아 더하기.
#include <iostream>
using namespace std;
int add(int x, int y) {
return x + y;
}
int main() {
int a, b;
cout << "숫자 입력:";
cin >> a;
cout << "숫자 입력:";
cin >> b;
cout << add(a, b);
return 0;
}
결과값: 사용자가 입력한 두 숫자의 합을 반환.
참조로 전달
& 연산자를 변수명 앞에 붙인 참조변수를 매개변수로 사용 가능.
※ 독립변수 (인수) 변경 할 때 유용.
[예제]
#include <iostream>
using namespace std;
void swapNums(int & x, int & y) {
int z = x;
x = y;
y = z;
}
int main() {
int a = 3;
int b = 4;
cout << "교환 전: " << a << b << "\n"; // 34
swapNums(a, b);
cout << "교환 후: " << a << b << "\n"; // 43
return 0;
}
주소 복사
랜덤 이동
최신댓글