위키득계정 ↗
기술

자료형

자료형기술
다른 이름
데이터 타입
영문명
Data type
주요 역할
값과 연산의 의미 규정
관련 구분
정적 타이핑과 동적 타이핑
자료형은 프로그램에서 다루는 값의 종류와 그 값에 허용되는 연산을 규정하는 체계다. 수, 문자열과 논리값처럼 기본적인 종류뿐 아니라 여러 값을 결합한 구조도 표현할 수 있다.

같은 기호가 다른 뜻이 될 때

숫자 12와 문자열로 저장된 12는 모양이 같아도 의미와 가능한 연산이 다를 수 있다. 수를 더하는 일과 글자를 이어 붙이는 일은 구분된다. 자료형은 프로그램이 값을 어떻게 해석하고 다룰지 결정하는 데 관여한다.

범위와 표현

정수형은 표현할 수 있는 범위가 제한될 수도 있고 필요에 따라 자릿수를 늘릴 수도 있다. 소수를 나타내는 형식에도 정밀도와 반올림 규칙이 있다. 자료형 이름만 보고 모든 언어에서 범위와 동작이 같다고 가정하면 안 된다.

검사하는 시점

정적 타이핑에서는 실행 전에 프로그램의 타입 관계를 검사한다. 동적 타이핑에서는 실행 중의 값과 연산을 기준으로 검사하는 경우가 많다. 실제 언어는 여러 기능을 결합할 수 있으며 타입 검사가 프로그램의 모든 오류를 막아 주는 것은 아니다.

구조를 표현하기

배열과 레코드, 객체 같은 구조는 여러 값을 일정한 관계로 묶는다. 사용자 정의 자료형은 문제의 대상을 명확하게 표현하고 잘못된 조합을 제한하는 데 도움이 될 수 있다. 어떤 값을 담는지뿐 아니라 어떤 연산을 허용하는지도 설계의 일부다.

관련 문서

프로그래밍 언어 / 변수 (컴퓨터 과학) / 컴파일러 / 자료 구조