인프런 커뮤니티 질문&답변

주서님의 프로필 이미지
주서

작성한 질문수

(2025) 일주일만에 합격하는 정보처리기사 실기

지역변수 vs 전역변수

제가 항상 헷갈리던 부분이네요..

해결된 질문

작성

·

67

0

항상 틀리는 부분입니다.

지역변수의 경우엔 포인트변수나, 배열 참조하지 않는이상 전역변수로(메인으로) 넘어오지 않는다.

그렇게 인지해도 괜찮을까요?

답변 1

0

주말코딩님의 프로필 이미지
주말코딩
지식공유자

음..

질문 주신 표현이 조금 이상해서 다시 정리하자면,

 

말 그대로 지역 변수는 특정 지역(local)에 있는 변수이고, 전역 변수는 그 지역 밖(global)에 있으니 모두가 접근할 수 있는 변수입니다.

 

전역 변수로 넘어온다는 것이 무슨 의미인지 모르겠습니다.

변수는 이미 정해진 상태로 코드가 진행됩니다.

주서님의 프로필 이미지
주서
질문자

아 지역변수에서 대입된 값이 전역변수로 넘어오지 않는다는 뜻입니다..
설명이 많이 이상했나봅니다 ㅠㅠ..

주말코딩님의 프로필 이미지
주말코딩
지식공유자

혹시 특정 지역에서 계산된 값은 거기서 끝난다는 말씀이라면 맞습니다.

 

그런데, 함수의 경우도 별도의 지역인데 값을 돌려주면 메인함수의 변수에서도 리턴을 받으니까 영향을 받는 것이죠.

주서님의 프로필 이미지
주서
질문자

값을 돌려준다는 게 무엇을 뜻하나요?
예제와 다른내용인가요?

주말코딩님의 프로필 이미지
주말코딩
지식공유자

아~평소에 다뤘던 일반 함수 말씀입니다! 함수 내에 있는 것도 지역변수인데, 메모리값을 주고 받으면서 영향을 줄 수 있다는 말씀이었습니다.

주서님의 프로필 이미지
주서
질문자

아 포인터변수나 배열처리 말씀이시군요! 이해했습니다

주서님의 프로필 이미지
주서

작성한 질문수

질문하기