programming language/C++

C++ 자료형

metamong-data 2025. 1. 13. 00:07
728x90
반응형

개요

C++에서 자료형(Data Types)은 변수에 저장할 데이터의 유형을 지정합니다. 효율적인 메모리 사용과 프로그램의 정확성을 위해 자료형의 올바른 선택이 중요합니다. 이 문서에서는 C++에서 제공하는 주요 자료형에 대해 살펴보겠습니다.

기본 자료형

C++에서 기본적으로 제공하는 자료형은 다음과 같습니다:

정수형 (Integer)

특징

  • 정수 값을 저장합니다.
  • 크기와 범위는 int, short, long, long long 등으로 구분됩니다.
  • signedunsigned로 부호를 포함하거나 제외할 수 있습니다.

예제

#include <iostream>
using namespace std;

int main() {
    int a = 10;
    unsigned int b = 20;
    long c = 100000;
    signed short d = -300;
    unsigned long long e = 123456789012345;
    cout << "a: " << a << "\nb: " << b << "\nc: " << c << "\nd: " << d << "\ne: " << e << endl;
    return 0;
}

출력

a: 10
b: 20
c: 100000
d: -300
e: 123456789012345

크기 및 범위

자료형크기 (바이트)범위 (signed)범위 (unsigned)

int 4 -2,147,483,648 ~ 2,147,483,647 0 ~ 4,294,967,295
short 2 -32,768 ~ 32,767 0 ~ 65,535
long 4 또는 8 플랫폼에 따라 다름 플랫폼에 따라 다름
long long 8 -9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807 0 ~ 18,446,744,073,709,551,615
unsigned 크기에 따라 다름 0부터 시작하는 동일 크기 signed의 양수 범위 -

실수형 (Floating Point)

특징

  • 소수점을 포함한 실수 값을 저장합니다.
  • 크기와 정밀도에 따라 float, double, long double로 나뉩니다.

예제

#include <iostream>
using namespace std;

int main() {
    float f = 3.14f;
    double d = 3.14159265359;
    long double ld = 3.14159265358979323846L;
    cout << "f: " << f << "\nd: " << d << "\nld: " << ld << endl;
    return 0;
}

출력

f: 3.14
d: 3.14159
ld: 3.14159

크기 및 정밀도

자료형 크기 (바이트) 정밀도 (소수점 이하)
float 4 7
double 8 15
long double 8 또는 16 플랫폼에 따라 다름

문자형 (Character)

특징

  • 단일 문자를 저장합니다.
  • ASCII 또는 Unicode 값을 사용합니다.

예제

#include <iostream>
using namespace std;

int main() {
    char ch = 'A';
    unsigned char uch = 255;
    cout << "Character: " << ch << "\nASCII Value: " << int(ch) << endl;
    cout << "Unsigned Character Value: " << int(uch) << endl;
    return 0;
}

출력

Character: A
ASCII Value: 65
Unsigned Character Value: 255

불리언형 (Boolean)

특징

  • true 또는 false 값을 저장합니다.
  • 내부적으로 1(true) 또는 0(false)로 저장됩니다.

예제

#include <iostream>
using namespace std;

int main() {
    bool isCPPFun = true;
    bool isTough = false;
    cout << "Is C++ fun? " << isCPPFun << endl;
    cout << "Is C++ tough? " << isTough << endl;
    return 0;
}

출력

Is C++ fun? 1
Is C++ tough? 0

유도 자료형

C++에서는 기본 자료형을 조합하여 다음과 같은 유도 자료형을 제공합니다:

배열 (Array)

특징

  • 동일한 자료형의 집합을 저장합니다.
  • 고정 크기를 가지며, 인덱스를 통해 접근합니다.

예제

#include <iostream>
using namespace std;

int main() {
    int arr[5] = {1, 2, 3, 4, 5};
    for (int i = 0; i < 5; i++) {
        cout << "Element " << i << ": " << arr[i] << endl;
    }
    return 0;
}

출력

Element 0: 1
Element 1: 2
Element 2: 3
Element 3: 4
Element 4: 5

열거형 (Enum)

특징

  • 상수 집합을 정의합니다.

예제

#include <iostream>
using namespace std;

enum Days { Monday, Tuesday, Wednesday, Thursday, Friday };

int main() {
    Days today = Wednesday;
    cout << "Today is day number: " << today << endl;
    return 0;
}

출력

Today is day number: 2

결론

C++의 다양한 자료형은 효율적이고 유연한 프로그래밍을 가능하게 합니다. 기본 자료형과 유도 자료형을 이해하고 올바르게 활용하면 더욱 안정적이고 강력한 프로그램을 작성할 수 있습니다.

728x90

'programming language > C++' 카테고리의 다른 글

C++ 복합데이터  (0) 2025.01.13
C++ 흐름제어  (0) 2025.01.13
C++ 연산자  (0) 2025.01.13
C++ 입출력  (0) 2025.01.13
CLion ( JetBrains의 C/C++ IDE )  (0) 2025.01.09