Return의 기능/전역 변수 & 지역 변수/메모리의 영역 구분

 

#1. return의 기능(함수의 종료)

 

학습목표 - 함수의 문법과 사용을 이해하고 return의 기능을 이해한다.

 

어제 배운 것 복습

 

p/214 함수의 유형

 

- 인자와 반환 값의 유무에 따른 4가지 유형

 

- 지역변수란 함수 안에서만 실행되고 해당 함수가 끝나면 같이 사라지는 변수를 말한다.

 

- 함수의 개수를 알아내려면 메인 함수의 둥근 괄호의 개수를 살펴보면 된다.

 

 

p/215 return이 자니는 두 가지 의미 중 한 가지 의미만 살리기

 

1. 함수를 종료한다.

 

2. 값을 반환한다.

 

 

/*나누기에서

 

나누어지는 수 - 피제수

 

나누는 수 - 제수 */

 

 

앞으로 비교연산자 ‘==’를 쓸 때 변수를 오른쪽에 쓴다.

실수를 ‘==’ 대신에 ‘=’를 입력했을 경우 에러가 나게 됨으로 실수를 잡을 수 있다.

 

실습 - return의 함수 종료 기능)

p/216 함수의 정의와 그에 따른 원형의 선언

 

함수는 호출되기 전에 미리 정의되어야 한다. 이 때 지난 시간에 배운 함수의 선언함수의 정의가 나온다.

 

!!! #2. 둘째 시간은 쉬었어요 \(-0-)/

#3. 지역변수와 전역변수

 

학습목표 - 지역변수와 전역변수를 구분하여 사용할 수 있다.

 

 

지역변수는 해당지역을 벗어나면 자동으로 소멸된다.

 

지역변수는 선언된 지역 내에서만 유효하기 때문에 선언된 지역이 다르면 이름이 같아도 문제가 되지 않는다.

 

지역변수의 주기는 여는 괄호로 시작해서 1. 닫는 괄호를 만나거나 2. return을 만나면 끝이난다.

 

같은 이름의 변수가 있으면 가장 가까이 있는 변수에게 명령어의 효력이 발생한다.

 

p/228 지역변수

 

위와 같이 동일한 num변수가 “if문 내에서는 main함수의 num이 가리워진다라고 한다.

 

전역변수(Global Variable)

 

main함수가 전에 선언되는 변수를 전역변수라고 한다.

 

p/230 - 전역변수)

 

전역변수는 기본 0으로 초기화된다!!!!!

전역변수를 초기화하면 해당되는 변수의 크기에 해당되는 메모리는 전부 0으로 채워진다.

 

 

 

 

 

 

#4. 메모리의 영역 구분

 

학습목표 - 메모리의 영역 구분이 어떻게 이루어지는지 이해한다.

 

// 함수는 이름자체가 주소이다.

 

메모리

 

함수들이 있는 영역은 Code영역이다.

 

// Visual Studio에서는 기존 영역과

 

지역변수Stack영역에 있다.

 

전역변수는 BSS영역에 있다.

 

전역변수BSS영역이 있고 Data영역이라고 한다.

 

초기 값을 넣은 변수들은 Data영역에 포함되고 초기 값이 없는 변수들은 BSS영역에 들어간다.

 

 













 

 

 

 

 

 

 

반응형
Posted by newind2000