C++ 데이터 유형


프로그래밍 언어로 프로그래밍할 때는 다양한 정보를 저장하기 위해 다양한 변수가 필요합니다. 변수가 유지하는 것은 저장하는 값의 메모리 위치입니다. 이는 변수를 생성할 때 메모리에 일부 공간이 예약되어 있음을 의미합니다.

다양한 데이터 유형(예: 문자 유형, 와이드 문자 유형, 정수 유형, 부동 소수점 유형, 이중 부동 소수점 유형, 부울 유형 등)의 정보를 저장해야 할 수 있습니다. 운영 체제는 데이터 유형에 따라 메모리를 할당합니다. 변수의 데이터 유형 및 예약된 메모리에 무엇을 저장할지 결정합니다.

기본 내장 유형

C++은 프로그래머에게 다양한 내장 데이터 유형과 사용자 정의 데이터 유형을 제공합니다. 다음 표에는 7가지 기본 C++ 데이터 유형이 나열되어 있습니다.

typekeyword
booleanbool
문자 유형char
정수 유형 int
floatfloat
doubledouble
untypedvoid
와이드 문자wchar_t

몇 가지 기본 유형을 사용할 수 있습니다. 하나 이상의 유형 수정자로 수정:

  • signed

  • unsigned

  • short

  • long

다음 표는 메모리 메모리에 값을 저장할 때 다양한 변수 종류에 필요한 점유량과 최대값, 최소값을 나타낸 표이다. ​​이 유형의 변수가 저장할 수 있습니다.

unsigned long int4바이트0 ~ 4,294,967,295float4바이트+/- 3.4e +/- 38(~7자리)double8바이트+/- 1.7e +/- 308(~1 5 숫자)long double8바이트+/- 1.7e + /- 308(~15자리)wchar_t2 또는 4바이트1 와이드 문자

위 표에서 볼 수 있듯이 변수의 크기는 사용하는 컴파일러와 컴퓨터에 따라 달라집니다.

아래 예는 컴퓨터의 다양한 데이터 유형의 크기를 출력합니다.

#include <iostream>
using namespace std;

int main()
{
   cout << "Size of char : " << sizeof(char) << endl;
   cout << "Size of int : " << sizeof(int) << endl;
   cout << "Size of short int : " << sizeof(short int) << endl;
   cout << "Size of long int : " << sizeof(long int) << endl;
   cout << "Size of float : " << sizeof(float) << endl;
   cout << "Size of double : " << sizeof(double) << endl;
   cout << "Size of wchar_t : " << sizeof(wchar_t) << endl;
   return 0;
}

이 예제에서는 각 줄 뒤에 개행 문자를 삽입하는 endl을 사용하고 << 연산자를 사용하여 여러 값을 화면에 전달합니다. 또한 sizeof() 함수를 사용하여 다양한 데이터 유형의 크기를 가져옵니다.

위 코드를 컴파일하고 실행하면 다음과 같은 결과가 생성되며 이는 사용하는 컴퓨터에 따라 달라집니다.

Size of char : 1
Size of int : 4
Size of short int : 2
Size of long int : 4
Size of float : 4
Size of double : 8
Size of wchar_t : 4

typedef 선언

기존 유형에 typedef를 사용할 수 있습니다. 새 이름을 선택하세요. 다음은 typedef를 사용하여 새 유형을 정의하는 구문입니다.

typedef type newname;

예를 들어 다음 명령문은 컴파일러에게 foot이 int의 또 다른 이름임을 알려줍니다.

typedef int feet;

이제 다음 선언은 완전히 합법적입니다. 유형 변수 거리:

feet distance;

열거 유형

열거 유형은 선택적 유형 이름과 해당 유형의 값으로 사용되는 식별자 집합을 선언합니다. 0개 이상의 식별자를 이 유형의 값으로 사용할 수 있습니다. 각 열거자는 열거 유형의 상수입니다.

열거형을 만들려면 enum 키워드를 사용해야 합니다. 열거 유형의 일반적인 형식은 다음과 같습니다.

enum enum-name { list of names } var-list;

여기서 enum-name은 열거 유형의 이름입니다. 이름 목록 { 이름 목록 }은 쉼표로 구분됩니다.

예를 들어 다음 코드는 색상 열거형을 정의하고 변수 c의 유형은 색상입니다. 마지막으로 c에는 "blue" 값이 할당됩니다.

enum color { red, green, blue } c;
c = blue;

기본적으로 이름의 값은 0, 두 번째 이름의 값은 1, 세 번째 이름의 값은 2 등입니다. 그러나 초기 값을 추가하여 이름에 특별한 값을 할당할 수도 있습니다. 예를 들어 아래 열거형에서 green의 값은 5입니다.

enum color { red, green=5, blue };

여기서 blue의 값은 6입니다. 기본적으로 각 이름은 이전 이름보다 1이 더 크기 때문입니다.


typebitrange
char1바이트 -128~127 또는 0~255
unsigned char1 바이트 0 ~ 255
서명된 문자1바이트 -128에서 127
int4바이트 -2147483647
un 서명된 int4바이트0에서 4294 967295
서명됨 int4 bytes-2147483647
short int2바이트-32768 ~ 3276 7
unsigned short intRange 0 ~ 65,535
signed short intRange- 32767#