1. 자료형(Data Type)
데이터를 표현하는 방법 (변수, 상수도 자료형)
우리가 자료형 이름(int, double 등)을 통해 자료형을 사용할 수 있는 이유는 미리 정의되어있어 쉽게 메모리 공간을 할당할 수 있기 때문이다.
2. 자료형의 종류
char 자료형은 크기가 1바이트이므로 나타날 수 있는 데이터가 2^8 = 256개이다.
그래서 -128 ~ 127까지 표현할 수 있는 것이다.
또한, 자료형 이름 앞에 unsigned를 붙여서 0과 양의 정수로만 표현하게 할 수 있다.
unsigned char을 선언하면 크기는 char와 그대로 1이지만 값의 표현 범위가 0 ~ 255까지이다.
참고 1) 1바이트 = 8비트이므로 나타낼 수 있는 데이터 종류는 2^8 = 256개이다.
참고 2) long의 경우 32비트 운영체제에서는 4바이트로 64비트 운영체제에서는 8바이트로 동작한다.
3. 자료형의 크기
자료형의 크기를 확인하려면 sizeof 연산자를 이용하면 된다. sizeof 연산자는 메모리 공간에서 소모하는 메모리의 크기를 바이트 단위로 계산해서 반환하는 연산자이다.
#include <stdio.h>
int main(void)
{
char num1 = 10;
int num2 = 200;
float num3 = 30.1;
double num4 = 40.125;
printf("size of char type : %d \n",sizeof(num1));
printf("size of int type: %d \n",sizeof(num2));
printf("size of float type : %d \n",sizeof(num3));
printf("size of double type : %d \n",sizeof(num4));
return 0;
}
sizeof 연산자를 통해 각 자료형의 크기를 확인한 결과는 위 그림과 같다.
4. 추가 설명
위의 내용을 통해 모든 자료형이 각자 일정한 크기를 가지고있다는 것을 알았다.
즉, 자료형을 사용하는 변수는 메모리의 어딘가에서 그 변수의 자료형에 해당하는 크기만큼을 사용한다.
변수의 메모리 주소를 확인하기 위해서는 변수명 앞에 & 기호를 붙이면 되고 변수의 크기를 확인하기 위해서는 위에서 언급한 sizeof 연산자를 이용하면된다.