본문 바로가기

프로그래밍/C++

기초중기초(함수)


1.광역변수,지역변수

광역변수 : 함수 밖에서 변수를 지정하여 모든 함수에 광역변수를 사용.
지역변수 : 함수 안에 변수를 지정하여 지정된 함수 안에서만 사용가능 한 변수.

ex)
--------------------------------------
//광역변수.
#include <iostream>
using namespace std;

int x=0; // 광역변수

int main()
{
x=x+1;
cout<<x<<endl;
}

//지역변수
#include <iostream>
using namespace std;

int main()
{
int x=0; // 지역변수
x=x+1;
cout<<x<<endl;
}

--------------------------------------

2.함수사용 규칙
- 함수는 변수처럼 사용되기 전에 (호출되기 전에) 정의되어 있어야 한다.
- 호출하면 해당 함수에 가서 함수안에 있는 명령문들을 실행하고 되돌아온다.
- 실행시 만나는 변수는 지역 -> 광역 의 순서로 찾는다.
- 프로그램은 main() 에서 시작한다.

ex )
--------------------------------------

#include <iostream>
using namespace std;
void hamsu();

int main(){
   cout << "기본함수" << endl;
   hamsu();     // 함수 호출
   cout << "끝" << endl;
}

void hamsu(){
   cout << "함수불러오기" << endl;
}  // 함수 정의

--------------------------------------

ex )
--------------------------------------

#include <iostream>
using namespace std;
void foo(int a);
int x;
int y=0;

int main(){
   int x=9;
   foo(5);
   foo(x);
   cout << x<<"\t" << y;
}

void foo(int a){
   int x;
   x = 8;
   y = y + 3;
   cout << x<<"\t" << a<<endl;
}

//main에서 foo(5) 를 호출하면 foo의 지역변수 a 에 5가 전달된다. foo(x) 를 호출하면 현재 main에서 x=9이므로 foo의 지역변수 a에 9가 전달된다.

--------------------------------------

'프로그래밍 > C++' 카테고리의 다른 글

약간의기초(포인터)  (0) 2011.01.04
기초중기초(구조체 struct)  (0) 2011.01.03
기초중기초(배열 array)  (0) 2011.01.03
기초중기초(반복문 for)  (0) 2011.01.03
기초중기초(반복문 while)  (0) 2010.12.27