오늘은 C++에서 사용되는 기본적인 자료형을 정리했습니다.
C++의 자료형은 C와 매우 유사합니다.
다음은 기본 자료형과 크기(bytes), 자료형 타입을 정리한 표입니다.
번호 | 자료형 | 크기(byte) | 범위 및 정밀도 (signed 기준) | 타입 |
1 | short | 2 | -2,147,483,648 ~ 2,147,483,647 | 정수형 |
2 | int | 4 | -32,768 ~ 32,767 | 정수형 |
3 | long | 4 / 8 | 4 / 8 에 따라 다름 | 정수형 |
4 | long long | 8 | -9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807 |
정수형 |
5 | float | 4 | 약 3.4E-38 ~ 3.4E+38 소수점 이하 약 7자리 |
실수형 |
6 | double | 8 | 약 1.7E-308 ~ 1.7E+308 소수점 이하 약 15자리 |
실수형 |
7 | log double | 8 | double보다 더 높은 정밀도 제공 | 실수형 |
8 | char | 1 | ASCII 값 사용 | 문자형 |
9 | bool | 1 | true(1) or false(0) | 불리언형 |
위 표에 대한 자세한 설명이어서 하겠습니다.
- long의 경우, 시스템에 따라서 4 bytes 일수도 있고 8 bytes 일수도 있습니다.
- bool의 경우, 1 bit로도 표현할 수 있지만 하드웨어 및 메모리 관리의 효율을 위해서 1 byte로 관리됩니다.
unsigned
- 자료형 앞에 unsigned를 붙이면, 음수를 허용하지 않는 대신 더 넓은 양의 범위를 가집니다.
- unsigned int, unsigned long 등등
문자열
- C에서는 char 배열 등으로 문자열을 관리했습니다.
- C++에서는 std::string 클래스로 문자열을 관리할 수 있습니다. C 스타일보다 더 직관적이고 사용하기 편합니다.
#include <iostream>
int main(){
std::string name;
std::cout << "Enter your name: ";
std::cin >> name;
std::cout << "Hello, " << name << "!" << std::endl;
return 0;
}
- 위와 같이 std::string으로 name이라는 변수를 선언하고, cin과 cout을 통해 이름을 입력받아 출력할 수 있습니다.
참고로, std::getline을 통해 줄 단위로 입출력할 수도 있습니다.
#include <iostream>
int main(){
std::string name;
std::cout << "Enter your name: ";
std::getline(std::cin, name);
std::cout << "Hello, " << name << "!" << std::endl;
return 0;
}
- std::getline의 첫 인자에 std::cin을 넣고, 두 번째 인자에 입력값을 저장할 변수(std::string)를 적으면 줄 단위로 문자열을 입력받을 수 있습니다.
'C++' 카테고리의 다른 글
[C++] C++ 함수 (0) | 2024.09.25 |
---|---|
[C++] C++ 제어문 - 반복문 (0) | 2024.09.25 |
[C++] C++ 제어문 - 조건문 (0) | 2024.09.24 |
[C++] C++ 입출력 (0) | 2024.09.24 |