2024년 5월 21일 작성

단순 자료 구조 (Primitive Data Structure)

단순 자료 구조는 가장 기본적이고 필수적인 Data Type을 저장하고 처리하는 자료 구조입니다.

단순 자료 구조 : Program에서 가장 기본적이고 필수적인 Data Type

  • 단순 자료 구조(Primitive Data Structure)는 가장 기본적인 형태의 data 저장 및 처리를 제공하는 자료형입니다.
    • computer system이 기본적으로 제공하며, 복잡한 자료 구조를 구성하는 기본 요소로 사용됩니다.

정수 (Integer)

  • 정수는 음수, 0, 양수를 포함하는 data type으로, 소수점이 없는 숫자를 나타냅니다.

  • C 언어에서는 여러 크기의 정수 type을 제공합니다.

    • char : 1Byte 크기로, -128에서 127 또는 0에서 255까지의 값을 가질 수 있습니다.
    • short : 2Byte 크기로, -32,768에서 32,767까지의 값을 가질 수 있습니다.
    • int : 4Byte 크기로, -2,147,483,648에서 2,147,483,647까지의 값을 가질 수 있습니다.
    • long : 8Byte 크기로, 매우 큰 정수 값을 가질 수 있습니다.
#include <stdio.h>

int main() {
    char a = 65;    // ASCII 'A'
    short b = 32000;    // Short integer
    int c = 1000000;    // Integer
    long d = 1000000000L;   // Long integer

    printf("char: %c\n", a);
    printf("short: %d\n", b);
    printf("int: %d\n", c);
    printf("long: %ld\n", d);

    return 0;
}

실수 (Floating Point)

  • 실수는 소수점을 포함하는 숫자를 나타내며, 정밀도를 가지고 있는 data type입니다.

  • C 언어에서는 여러 크기의 실수 type을 제공합니다.

    1. float : 4Byte 크기로, 소수점 이하 약 7자리의 정밀도를 가집니다.
    2. double : 8Byte 크기로, 소수점 이하 약 15자리의 정밀도를 가집니다.
    3. long double : 더 큰 크기로, 더 높은 정밀도를 제공합니다.
#include <stdio.h>

int main() {
    float a = 3.14f;
    double b = 2.718281828459;
    long double c = 1.618033988749895L;

    printf("float: %.2f\n", a);
    printf("double: %.12f\n", b);
    printf("long double: %.15Lf\n", c);

    return 0;
}

문자 (Character)

  • 문자는 단일 문자를 나타내는 data type으로, ASCII Code 또는 Unicode 값으로 저장됩니다.

  • C 언어에서는 char type을 사용하여 문자를 저장합니다.

#include <stdio.h>

int main() {
    char a = 'A';
    char b = 'B';

    printf("char a: %c\n", a);
    printf("char b: %c\n", b);

    return 0;
}

문자열 (String)

  • 문자열은 일련의 문자들로 구성된 data type으로, 일반적으로 null 문자(‘\0’)로 끝나는 배열(array) 형태로 저장됩니다.

  • C 언어에서는 문자열을 char 배열로 표현합니다.

#include <stdio.h>

int main() {
    char str1[] = "Hello, World!";
    char str2[20] = "C Programming";

    printf("str1: %s\n", str1);
    printf("str2: %s\n", str2);

    return 0;
}

논리값 (Boolean)

  • 논리값은 참(True) 또는 거짓(False) 두 가지 값만을 가지는 data type입니다.

  • C 언어에서는 명시적인 bool type이 없지만, 0은 False, 0 이외의 값은 True로 간주합니다.

    • C99 표준 이후에는 stdbool.h header를 포함하여 bool type을 사용할 수 있습니다.
#include <stdio.h>
#include <stdbool.h>

int main() {
    bool a = true;
    bool b = false;

    printf("bool a: %d\n", a);    // 1
    printf("bool b: %d\n", b);    // 0

    if (a) {
        printf("a is true\n");
    }
    if (!b) {
        printf("b is false\n");
    }

    return 0;
}

목차