728x90
1. 함수 기본
/*
* 1. 함수 정의 제공
* 2. main 앞에, 함수 원형 명시 ; (1)함수 데이터형 (2)함수 이름 (3)(매개변수);
* 3. 함수 호출
* */
/* 함수의 두 타입
* 1. 리턴값이 있는 타입: 함수가 리턴하는 값의 데이터형으로 선언 & return 뒤 변수 있음
* 2. 리턴값이 없는 타입: void로 선언 & return 뒤 변수 없음 */
#include <iostream>
using namespace std;
const float PIE = 3.14;
/* main 함수 이전에 함수 원형 명시 */
//물론 원형 명시와 함께 함수를 정의하는 것도 가능
void cheers(int n);
float circle(int x);
int main(){
int a;
cout << "하나의 수를 입력하십시오." << endl;
cin >> a;
cheers(a);
int b;
cout << "원의 반지름을 입력하십시오." << endl;
cin >> b;
float c = circle(b); //입력과 리턴 모두 자료형과 함께 미리 선언해주어야 함
cout << "원의 넓이는 " << c << "입니다." << endl;
}
/* main 함수가 끝날 때 함수 정의 */
void cheers(int n) {
for (int i = 0; i < n; i++) {
cout << "cheers!" << endl;
}
}
float circle(int x) {
return x * PIE;
}
→ 당연히, main 함수 안에, 내가 따로 선언해준 함수를 명시해서 사용해주어야 한다!
2. 매개변수와 전달인자
#include <iostream>
using namespace std;
void helloCPP(int, int);
int main() {
int n; //파라미터(매개변수)
int m; //파라미터(매개변수)
cout << "n: " << endl;
cin >> n; //파라미터(매개변수)
cout << "m: " << endl;
cin >> m; //파라미터(매개변수)
helloCPP(n, m); //전달인자(argument)
}
void helloCPP(int n, int m) {
for (int i=0; i < n; i++)
cout << "Hello n" << endl;
for (int i=0; i < m; i++)
cout << "Hello m" << endl;
}
→ 함수의 인자를, 우리의 입력 내용에 따라 정해줌
→ 매개변수와 전달인자 간 자료형이 일치해야 함
728x90
'개발 > c++' 카테고리의 다른 글
[c++] 메모리의 세 가지 영역 : 데이터, 스택, 힙 (0) | 2023.09.03 |
---|---|
[c++ 프로그래밍 입문] 5-2. 함수와 배열&구조체&포인터 (0) | 2023.08.30 |
[c++ 프로그래밍 입문] 4. Branch Syntax (분기 구문, 조건문) (1) | 2023.08.23 |
[c++ 프로그래밍 입문] 3. 반복문 (0) | 2023.08.22 |
[c++ 프로그래밍 입문] 2-3. 포인터 연산 (0) | 2023.08.20 |