C언어 자료형

1 개념

C Language Data Type
C 언어 자료형
  • 자료형은 "메모리의 크기"와 "저장된 숫자의 용도"의 정보를 가짐

2 자료형

구분 자료형 범위 바이트
정수형 char -128 ~ 127 1(8)
unsigned char 0 ~ 255 1(8)
short -32768 ~ 32767 2(16)
int -2,147,483,648 ~ 2,147,483,647 4(32)
long -2,147,483,648 ~ 2,147,483,647 4(32)
unsigned short 0 ~ 65535 2(16)
unsigned int 0 ~ 4,294,967,295 4(32)
unsigned long 0 ~ 4,294,967,295 4(32)
실수형 float 8.4×10-37 ~ 3.4×1038 4(32)
double 2.2×10-308 ~ 1.8×10308 8(64)
나열형 enum 정수를 대신하여 사용하는 별명, int형의 크기
무치형 void 실제 자료는 없음을 명시적으로 선언

3 자료형 예시

#include <stdio.h>

int main()
{
    printf("char = %lu\n", sizeof(char)); // 1
    printf("int = %lu\n", sizeof(int)); // 4
        printf("short int = %lu\n", sizeof(short int)); // 2
        printf("long int = %lu\n", sizeof(long int)); // 8
            printf("long = %lu\n", sizeof(long)); // 8 (long int와 동일)

    printf("float = %lu\n", sizeof(float)); // 4
    printf("double = %lu\n", sizeof(double)); // 8
        printf("long double = %lu\n", sizeof(long double)); // 16

    return 0;
}
→ char(1), int(4), float(4), double(8) 을 암기 한 후 short 는 나누기 2, long은 곱하기 2를 해주면 됨.

4 자료형의 포인터 만드는 법

  • 자료형 + '*' 로 만듬
자료형 포인터형
char char *
int int *
float float *
double double *
union bitAnalyzerTag union bitAnalyzerTag *

마지막은 공용체의 포인터 형이며 아래와 같은 구조를 가짐

union bitAnalyzerTag {
    unsigned int a;
    float b;
};

5 같이 보기

문서 댓글 ({{ doc_comments.length }})
{{ comment.name }} {{ comment.created | snstime }}