c++ 함수 / 전역 변수 / 지역 변수 / 매개 변수
c++ 함수
#include<iostream>
#include<stdio.h>
int main(){
int itemCnt = 0;
int money = 100;
itemCnt++;
money -= 10;
std::cout << "아이템을 구매했습니다" << std::endl;
std::cout << "아이템 개수"<<itemCnt << std::endl;
std::cout << "잔액" << money << std::endl;
}
이렇게 메인 함수에서 쓸수있지만
아이템 수가 많아지고 종류가 많아지면 많아질수록
메인 함수에서는 복잡해서
코드 보기가 용이하지 않을테다
그래서 뭐가 필요하냐?
또 다른 함수가 필요하다
'아이템만 사는 함수'가 필요하다
그래서 어떻게 해주냐면
#include <iostream>
#include<stdio.h>
void buyItem();
int main(){
}
void buyItem(){
}
main 함수는 그냥 buyItem이라는 함수를 불러오기만 하고 실행을 시키면 되는것이다
#include <iostream>
#include<stdio.h>
void buyItem();
int main(){
int itemCnt = 0;
int money = 100;
}
void buyItem(){
itemCnt++;
money -= 20;
std::cout << "아이템을 구매했습니다" <<std::endl;
std::cout << "아이템 개수 : " << itemCnt << std::endl;
std::cout << "잔액 : " << money << std::endl;
}
이러면 빨간줄이 걸린다.
왜 그러나면 main 함수에서 정의된 itemCnt는 buyItem() 이라는 함수안에서 정의가 안되었기 때문이다
그래서 우리가 전역 변수 global variable을 선언해주면 된다.
#incldue <iostream>
#include<stdio.h>
void buyItem();
int itemCnt;
int money ; // 전역변수 / global variable
int main(){
buyItem();
buyItem(); // buyItem() 함수의 호출
}
void buyItem(){
itemCnt++;
money -= 20;
std::cout << "아이템을 구매했습니다" <<std::endl;
std::cout << "아이템 개수 : " << itemCnt << std::endl;
std::cout << "잔액 : " << money << std::endl;
}
그러면 전역 변수를 만들면 buItem은 빨간줄이 안그어진다.
#include<iostream>
#include<stdio.h>
void buyItem();
int itemCnt;
int money;
int cost
//cost 는 전역변수로 한다.
//cost는 값을 바꿀수 있는 변수이다.
int main(){
money -= cost;
buyItem();
buyItem(); // buyItem() 함수의 호출
}
void buyItem(){
itemCnt++;
money -= moeny;
std::cout << "아이템을 구매했습니다" <<std::endl;
std::cout << "아이템 개수 : " << itemCnt << std::endl;
std::cout << "잔액 : " << money << std::endl;
}
-
#include<iostream>
#include<stdio.h>
void buyItem();
int itemCnt =0;
int money=100;
//cost 는 전역변수로 한다.
//cost는 값을 바꿀수 있는 변수이다.
int main(){
money -= cost;
buyItem();
buyItem(); // buyItem() 함수의 호출
}
void buyItem(int cost, int cnt){
itemCnt++;
money -= cost;
std::cout << "아이템을 구매했습니다" <<std::endl;
std::cout << "아이템 개수 : " << itemCnt << std::endl;
std::cout << "잔액 : " << money << std::endl;
}
매개변수는
buyItem() 안에 있는 cost , cnt 이다.
함수의 반환은
댓글
댓글 쓰기