데이터 타입 (C++)
2025. 1. 4. 20:09ㆍ프로그래밍 언어/C++
1. 기본 데이터 타입 (Fundamental Data Types)
정수형 (Integer Types)
정수를 저장
데이터 타입 | 크기 (바이트) | 값의 범위 | 예시 |
short | 2 | -32,768 ~ 32,767 | short a = 10; |
int | 4 | -2,147,483,648 ~ 2,147,483,647 | int b = 20; |
long | 4 또는 8 | 플랫폼에 따라 다름 | long c = 1000; |
long long | 8 | -9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807 | long long d = 100000LL; |
부호 없는 정수형 (Unsigned Integer Types)
양수만 저장
데이터 타입 | 크기 (바이트) | 값의 범위 | 예시 |
unsigned short | 2 | 0 ~ 65,535 | unsigned short a = 300; |
unsigned int | 4 | 0 ~ 4,294,967,295 | unsigned int b = 500; |
unsigned long | 4 또는 8 | 플랫폼에 따라 다름 | unsigned long c = 1000; |
unsigned long long | 8 | 0 ~ 18,446,744,073,709,551,615 | unsigned long long d = 100000ULL; |
실수형 (Floating-point Types)
소수점을 포함한 값
데이터 타입 | 크기 (바이트) | 유효 자릿수 | 값의 범위 | 예시 |
float | 4 | 약 6~7자리 | ±3.4E-38 ~ ±3.4E+38 | float a = 3.14f; |
double | 8 | 약 15자리 | ±1.7E-308 ~ ±1.7E+308 | double b = 3.14159; |
long double | 8 또는 16 | 약 19자리 | 플랫폼에 따라 다름 | long double c = 3.1415926535; |
문자형 (Character Type)
한 개의 문자를 저장
데이터 타입 | 크기 (바이트) | 값의 범위 | 예시 |
char | 1 | -128 ~ 127 또는 0 ~ 255 | char c = 'A'; |
부울형 (Boolean Type)
참(True) 또는 거짓(False)을 저장
데이터 타입 | 크기 (바이트) | 값의 범위 | 예시 |
bool | 1 | true, false | bool flag = true; |
2. 파생 데이터 타입 (Derived Data Types)
1) 배열 (Array)
- 동일한 데이터 타입의 값을 연속적으로 저장.
- 예시:
int arr[5] = {1, 2, 3, 4, 5};
2) 포인터 (Pointer)
- 변수의 주소를 저장.
- 예시:
int a = 10;
int *ptr = &a;
3) 참조형 (Reference)
- 기존 변수에 대한 별칭을 생성.
- 예시:
int a = 10;
int &ref = a;
4) 함수 (Function)
- 함수도 데이터 타입으로 간주되며 특정 반환 타입과 입력 매개변수 타입을 가짐.
- 예시:
int add(int a, int b) {
return a + b;
}
3. 사용자 정의 데이터 타입 (User-defined Data Types)
1) 열거형 (Enumeration)
- 상수 값 집합을 정의.
- 예시:
enum Color { RED, GREEN, BLUE };
Color myColor = RED;
2) 구조체 (Structure)
- 서로 다른 데이터 타입의 변수 묶음. (C++에서 구조체는 class와 동일하며 기본 접근제한자가 public이라고 생각하면 될 것 같다.)
- 예시:
struct Point {
int x;
int y;
};
Point p1 = {10, 20};
3) 클래스 (Class)
- 데이터와 함수를 포함하는 사용자 정의 데이터 타입.
- 예시:
class Car {
public:
string brand;
int speed;
};
Car myCar;
myCar.brand = "Toyota";
myCar.speed = 120;
4) 공용체 (Union)
- 여러 변수 중 하나만 저장 공간을 공유.
- 예시:
union Data {
int i;
float f;
};
Data data;
data.i = 10;
4. 자동형 데이터 타입 (Auto and decltype) - 추론 규칙은 별도로.
1) auto
- 데이터 타입을 추론.
- 예시:
auto x = 10; // int
auto y = 3.14; // double
2) decltype
- 표현식의 타입을 추론.
- 예시:
int a = 5;
decltype(a) b = 10; // b는 int 타입
'프로그래밍 언어 > C++' 카테고리의 다른 글
C++ 초급 - 1. C++ 소개 및 개발 환경 설정 (2 - C++ 표준 버전 개요) (0) | 2025.02.12 |
---|---|
C++ 초급 - 1. C++ 소개 및 개발 환경 설정 (1 - C++ 개요 및 특징) (0) | 2025.02.12 |
std::is_empty - empty class (C++11~) (0) | 2024.08.04 |
Namespaces (using - namespace의 특정 맴버) (0) | 2024.08.03 |
Namespaces (using) (0) | 2024.08.03 |