본문 바로가기

C++

[C++] C의 자료형

C++을 공부하기 위해서 먼저 C언어에서의 자료형에 대해서 확인해 보았다.

 

바이트(byte) : 컴퓨터에서 처리하는 가장 작은 단위 (1byte -> 8bit)

 

자료형 키워드
메모리 크기 값의 범위
문자형 char 1 Bytes -128~127
정수형 short 2 Bytes -32,768~32,767
int 4 Bytes -2,147,483,648
~ 2,147,438,647
long 4 Bytes -2,147,483,648
~2.147.483.647
부호없는 문자형 unsigned char 1 Bytes 0~255
부호없는 정수형 unsigned short 2 Bytes 0~65,535
unsigned int 4 Bytes 0~4,294,967,295
unsigned long 4 Bytes 0~4,294,967,295
부동 소수형 float 4 Bytes 1.2E-38~3.4E38
double 8 Bytes 2.2E-308~1.8E308
void형 void 0 Bytes 값 없음

 

자료형 중에서도 unsigned라는 개념에 대해서 처음 접했는데 정수형 데이터 중에서 음수를 허용해야 하지 않는 경우에 사용한다고 한다. (ex : 사람의 키)

이처럼 음수를 허용하지 않는 경우에 더 많은 숫자의 범위를 사용할 수 있게 된다.

 

signed unsigned
자료형이 가질 수 있는 크기 중
최상위 비트를 부호 판별용으로
사용하기 때문에, 표현할 수 있는
숫자의 범위가 좁다.
예) int : 4Bytes
( -2,147,483,648 ~ 2,147,438,647)
unsigned 변수는 부호 비트가
필요없기 때문에, signed 변수보다
숫자의 범위를 더 넓게 표현할 수
있다.
예) int : 4Bytes
(0~4,294,967,295)

 

ASCII : 미국정보교환표준부호(영어: American Standard Code for Information Interchange), 또는 줄여서 ASCII( /ˈæski/, 아스키)는 영문 알파벳을 사용하는 대표적인 문자 인코딩이다. 아스키는 컴퓨터와 통신 장비를 비롯한 문자를 사용하는 많은 장치에서 사용되며, 대부분의 문자 인코딩이 아스키에 기초를 두고 있다.

아스키는 7비트 인코딩으로, 33개의 출력 불가능한 제어 문자들과 공백을 비롯한 95개의 출력 가능한 문자들로 총128개로 이루어진다. 제어 문자들은 역사적인 이유로 남아 있으며 대부분은 더 이상 사용되지 않는다. 출력 가능한 문자들은 52개의 영문 알파벳 대소문자와, 10개의 숫자, 32개의 특수 문자, 그리고 하나의 공백 문자로 이루어진다.

아스키가 널리 사용되면서 다양한 아스키 기반의 확장 인코딩들이 등장했으며, 이들을 묶어서 아스키라고 부르기도 한다. 대표적으로 7비트 인코딩을 유지한 ISO/IEC 646과, 원래 아스키 코드 앞에 비트 0을 넣어 8비트 인코딩을 만든 IBM 코드 페이지와 ISO 8859가 있다. 이 인코딩들은 언어군에 따라 같은 숫자에 서로 다른 문자가 배당된 경우가 많다.