기본 자료형의 종류와 데이터의 표현 범위
정수 저장 크기는 4바이트 변수 이름은 num
int num;
정수형
- char 1 바이트
- short 2바이트
- int 4바이트
- long 4바이트
- long long 8바이트
실수형
- float 4바이트
- double 8바이트
- long double 8바이트 이상
여기서 sizeof 는 연산자의 피연사자로븐 변수, 상수 및 자료형의 이름이 올 수 있다. 여기서는 char int double의 크기를 계산하여 그 크기를 나타내주는 것이다
보통은 대개 int를 선택한다.
CPU가 연산하기에 가장 적합한 데이터의 크기는 int형 크기로 결정되고
char형 short형 변수의 사용용도
연산을 수반하지 않으면서 많은 수의 데이터를 저장해야한다면 char 또는 short로 데이터를 표현 및 저장하는 것이 적절하다
문자의 표현을 위한 약속 ASCII 코드
컴퓨터는 문자를 표현 및 저장을 하지 못한다. 따라서 문자 표현을 목적으로 각 문자에 고유한 숫자를 지정한다.
인간의 입력한 문자가 컴퓨터에 숫자로 저장 및 인식이되고, 컴퓨터의 저장된 숫자는 문자로 변환되어 인간에게 보여진다.
문자를 char형 변수에 저장하는 이유
서식문자 %c 해당 숫자의 아스키 코드 문자를 출력하라를 의미
모든 아스키 코드 문자는 1바이트로도 충분히 표현 가능
문자는 덧셈 뺄셈과 같은 연산을 동반하지 않음
따라서 1바이트 크기인 char형 변수가 문자를 저장하기 최적이다.
리터럴 상수의 자료형
리터럴 상수도 자료형이 결정되어야 메모리 공간에 저장이 될 수 있다.
정수는 기본적으로 int형으로 표현
실수는 기본적으로 double형 으로 표현
문자는 기본적으로 int형으로 표현
대입 연산의 과정에서 발생하는 자동 형 변환
double num1=245의 경우 int형 정수 245를 double형으로 자동 형 변환
int num2=3.1415의 경우 double형 실수 3.1415를 int형으로 자동 형 변환
int형 변수 num3에 저장된 값을 char형으로 자동 형 변환
자동 형 변환 규칙
$$int \;\Rightarrow \; long \;\Rightarrow \; long\;long\;\Rightarrow ];\Rightarrow \;float\;\Rightarrow double\;\Rightarrow \;;long\;double$$