C++ 자료형

이영준·2024년 12월 2일
0

C++ 기본문법

목록 보기
2/12

내장 자료형, 사용자 정의 자료형

내장 자료형 (built-in data types) : 기본 자료형, 복합 자료형
사용자 정의 자료형 : Enumerated (열거형), 클래스

기본 자료형

정수 자료형

C++에서는 short int(또는 short), int, long int(또는 long)(4바이트 혹은 8바이트의 크기를 가짐)의 3개의 정수 자료형 존재

int main () 
{ 
cout << "Size of short int is " << sizeof (short int) << " bytes." << endl;
cout << "Size of int is " << sizeof (int) << " bytes." << endl;
cout << "Size of long int is " << sizeof (long int) << " bytes." << endl;
return 0;
}

Run:
Size of short int: 2 bytes.
Size of int: 4 bytes.
Size of long int: 4 bytes.

정수 리터럴

어떤 자료형의 값을 고정하여 사용할 때 이를 리터럴이라고 부름. 이는 값이 변경되지 않음

  • 기본적으로 정수 리터럴은 signed int 형을 가짐
  • int 범위를 넘어서면 long int 타입을 가짐
  • long int 타입임을 명시적으로 표시하기 위해 l이나 L을 붙임
  • unsinged로 만들기 위해 u 또는 U를 붙일 수 있음
1234 // The system uses signed integer
1234U // The system uses unsigned integer
1234L // The system uses signed long int
1234UL // The system uses unsigned long int

문자 자료형

C++의 문자 자료형의 크기는 1바이트이며 부호가 없음
char을 사용하여 선언

문자 리터럴

문자는 2가지 형태로 리터럴로 사용 가능
1. ASCII 테이블에 정의된 글자를 작은 따옴표 안에 넣어 사용
2. ASCII 테이블에 정의된 정수 값을 사용 (0~127)

int main () { 
  // Defining and initializing some variables of char type 
  char first = 'A';
  char second = 65;
  char third = 'B';
  char fourth = 66;
  // Printing values cout << "Value of first: " << first << endl;
  cout << "Value of second: " << second << endl;
  cout << "Value of third: " << third << endl;
  cout << "Value of fourth: " << fourth;
  return 0;
}

Run:
Value of first: A
Value of second: A
Value of third: B
Value of fourth: B

이스케이프 문자형

일부 특수문자등을 표현하기 위해서는 이스케이프 문자()를 활용한다.

불 자료형

불은 1바이트(8비트)로 메모리에 저장된다.

  • 역시 정수로 표현가능하며, int로 출력시 0,1로 출력된다.
  • 0 이외의 값을 불에 할당하면 true 이다. (-8,123 등도 true)

부동 소숫점 자료형

C++에서는 소숫점을 갖는 숫자를 부동 소숫점(floating-point)라고 한다.
계산을 효율적으로 할 수 있게 float, double, long double 이라는 3가지 종류의 부동 소숫점을 정의한다.
모두 부호가 있는 숫자이다.

void 자료형

void는 값이 없음을 나타내는 특별한 자료형이다.

문자열 자료형

Null 문자로 끝나는 문자들의 집합이다.

  • "John" => 'J' 'o' 'h' 'n' '/0'

C++은 사용자 정의 자료형인 클래스로 새로운 문자열 자료형을 제공한다. => <string>

profile
컴퓨터와 교육 그사이 어딘가

0개의 댓글