위키득계정 ↗
기술

변수 (컴퓨터 과학)

변수 (컴퓨터 과학)기술
영문명
Variable
주요 역할
값에 이름을 부여하고 참조
관련 개념
대입, 범위와 수명
주의점
이름과 객체 자체는 구분
프로그래밍에서 변수는 값을 가리키거나 저장된 값에 접근하기 위해 사용하는 이름 있는 요소다. 값을 바꾸는 방식과 이름이 유효한 범위, 저장 방식은 언어와 실행 환경에 따라 다르다.

이름을 통해 값을 다룬다

프로그램은 점수나 현재 위치처럼 작업 중에 필요한 정보를 이름으로 다룰 수 있다. 이름을 사용하면 같은 값을 여러 곳에서 표현하고 계산 과정을 명확하게 적을 수 있다. 변수의 이름과 현재 연결된 값은 서로 다른 개념이다.

상자라는 비유의 한계

변수를 값을 담는 상자로 설명하면 대입의 기본 모습을 이해하기 쉽다. 하지만 어떤 언어에서는 이름이 객체를 가리키는 연결로 동작하고 여러 이름이 같은 객체를 가리킬 수 있다. 이름을 바꾸는 일과 객체 내부를 변경하는 일도 다를 수 있다.

범위와 수명

변수의 범위는 이름을 사용할 수 있는 프로그램의 영역이고 수명은 관련 값이나 저장 공간이 존재하는 기간이다. 둘이 언제나 같지는 않다. 함수 밖으로 반환된 값이나 다른 곳에서 참조하는 객체가 함수 실행 뒤에도 남을 수 있다.

메모리와 최적화

소스 코드의 변수 하나가 항상 고정된 메모리 주소 하나에 대응하는 것은 아니다. 컴파일러가 레지스터를 사용하거나 계산을 미리 처리하고 불필요한 저장을 없앨 수 있다. 소스 수준의 의미와 기계 수준의 구현을 구분하면 언어의 동작을 더 정확히 이해할 수 있다.

관련 문서

자료형 / 프로그래밍 언어 / 기억 장치 / 컴파일러