C

[내배캠자습]C언어 챕터 1-8 : 자료형

BreadMushroom 2026. 3. 27. 23:07

자료형의 필요성

컴퓨터는 아주 단순히 말해서, 계산하고 저장하는 기계. 우리가 입력한 모든 값은 결국 0과 1로 저장됩니다. 하지만 컴퓨터는 그 0과 1의 묶음들이 무엇을 의미하는지 전혀 알 수 없습니다. 어디서부터 어디까지(크기)를 어떻게 해석해야하는지 알려줘야합니다. 이 역할을 하는 것이 자료형입니다.

 

컴퓨터 공학에서의 크기 단위

컴퓨터 공학에서 가장 작은 크기 단위는 1 bit입니다. 이진법의 한 자리에 해당하는 크기입니다.

컴퓨터 상식적으로 8 bits를 1 byte라고 부릅니다.

다시 1024 bytes를 1 mb라고 부릅니다.

 

자료형(Type)

저장될 데이터의 크기와 해석 방법에 대한 정보.

자료형 크기 == 표현 가능한 수 서식 지정자
char 1 byte. -(2^7) ~ (2^7) - 1
[-128 ~ 127]
%c or %hhd
short int 2 byte. -(2^15) ~ (2^15) - 1
[-32768 ~ 32767]
%hd
int
[기본 정수 자료형]
4 byte. -(2^31) ~ (2^31) - 1
[-2147483648 ~ 2147483647]
%d or %i
long 4 byte or 8 byte. %ld
long long 8 byte. -(2^63) ~ (2^63) - 1 %lld
float 4 byte. 유효 자리수 6~7자리.
[부호: 1bit, 지수: 8bit, 가수: 23bit]
%f
double
[기본 실수 자료형]
8 byte. 유효 자리수 15~16자리.
[부호: 1bit, 지수: 11bit, 가수: 52bit]
%lf
long double 8 byte 이상. %Lf

 

Ex010801) 리터럴과 자료형

#include <stdio.h>

int main(void)
{
    65536;           // int 자료형의 리터럴. 즉, int는 "기본 정수 자료형".
    65536LL;         // LL은 long long의 약자. 즉, long long 자료형의 리터럴 기호. l은 1과 헷갈리기 때문에 잘 안씁니다.
    65536u;          // u는 unsigned의 약자. unsigned의 리터럴 기호.
    3.141592;        // double 자료형의 리터럴. 즉, double은 "기본 실수 자료형".
    3.141592f;       // float 자료형의 리터럴 기호 f.
    'd';             // char 자료형의 리터럴. ''는 char 자료형의 리터럴 기호.
    "Hello, world!"; // 문자열 리터럴. ""는 문자열 리터럴 기호. const char[] 자료형 리터럴 기호.

    return 0;
}