데이터 타입(Data Type)
모든 변수는 선언 중에 데이터 타입을 사용하여 저장할 데이터 타입을 제한합니다. 따라서 데이터 타입은 변수에 저장할 수 있는 데이터 타입을 알려주는데 사용된다고 말할 수 있습니다.
C++에서 변수가 정의될 때마다 컴파일러는 선언된 데이터 타입에 따라 해당 변수에 일부 메모리를 할당하고 모든 데이터타입은 서로 다른 양의 메모리가 필요합니다.
C++은 다음의 데이터 타입을 지원합니다.
- 기본 , 내장 또는 기본 데이터 타입
- 파생 데이터 타입
- 사용자 정의 데이터 타입
데이터 타입의 3가지 유형
기본 데이터 타입(Primary) : 이 데이터 타입은 내장되거나 사전 정의된 데이터 타입이며 사용자가 변수를 선언하기 위해 직접 사용할 수 있습니다.(int, char, float bool ...)
파생 데이터 타입(Derived) : 함수, 배열, 포인터 및 참조로 데이터를 처리하는데 유용한 많은 도구를 제공합니다. 함수를 사용하면 재사용 가능한 코드를 작성할 수 있고 배열은 여러 항목과 데이터를 매우 효율적으로 관리하는 데 도움이 됩니다. 포인터를 사용하면 유연한 메모리 사용과 참조도 가능합니다. 참조는 별칭을 만드는 방법과 변수를 사용하는 더 간단한 방법을 제공합니다.
추상 또는 사용자 정의 데이터 타입(User Defined) : 사용자 정의 데이터 타입을 통해 프로그래머는 코드를 쉽게 구성 및 사용자 정의하고 모듈식으로 효율적이고 읽기 쉬운 코드를 작성할 수 있습니다. 사용자 정의 데이터 타입은 프로그램의 유연성과 구조를 향상 시킵니다.
데이터 타입의 범위
| Data Type | Size(in bytes) | Range |
|---|---|---|
| short int | 2 | -32,768 ~ 32,767 |
| unsigned short int | 2 | 0 ~ 65,535 |
| unsigned int | 4 | 0 ~ 4,294,967,295 |
| int | 4 | -2,147,483,648 ~ 2,147,483,647 |
| long int | 4 | -2,147,483,648 ~ 2,147,483,647 |
| unsigned long int | 4 | 0 ~ 4,294,967,295 |
| long long int | 8 | -(2^63) ~ (2^63)-1 |
| unsigned long long int | 8 | 0 ~ 18,446,744,073,709,551,615 |
| signed char | 1 | -128 ~ 127 |
| unsigned char | 1 | 0 ~ 255 |
| float | 4 | -3.4×10^38 ~ 3.4×10^38 |
| double | 8 | -1.7×10^308 ~ 1.7×10^308 |
| long double | 12 | -1.1×10^4932 ~ 1.1×10^4932 |
| wchar_t | 2 or 4 | 1 wide character |
컴파일러 마다 다를 수 있고 위의 예시는 GCC 32비트를 예시로 사용했습니다.
데이터 타입의 수정자
내장 데이터 타입과 함께 사용되어 특정 데이터 타입이 보유할 수 있는 데이터 길이를 수정합니다.

데이터 타입 사용의 장점
데이터 타입 사용의 단점