C언어 구조체 사용법

구조체(struct)는 서로 다른 자료형들을 하나로 묶어 관리할 수 있게 해준다.

복잡한 데이터를 구조화할 때 핵심적인 역할을 한다.

구조체 사용 기본 예시

#include <stdio.h>
#include <string.h>

// 구조체 정의
struct Point {
    int x;
    int y;
};

struct Person {
    char name[20];
    int age;
};

int main() {
    // 1. 구조체 변수 선언 및 초기화
    struct Point p1 = {10, 20};

    // 2. 멤버 접근
    printf("Point: (%d, %d)\n", p1.x, p1.y);

    // 3. 구조체 포인터 사용
    struct Person person;
    struct Person *ptr = &person;

    strcpy(ptr->name, "James"); // 화살표 연산자(->) 사용
    ptr->age = 25;

    printf("Name: %s, Age: %d\n", ptr->name, ptr->age);

    return 0;
}

코드 설명:
– 구조체 변수에서 멤버에 접근할 때는 .(점) 연산자를 사용하고, 구조체 포인터에서 멤버에 접근할 때는 ->(화살표) 연산자를 사용한다.
typedef를 사용하면 struct 키워드를 생략하고 더 간결하게 타입을 선언할 수 “있다.

처음에는 가볍게 훑으려던 C언어 구조체 사용법가 생각보다 깊었다.

주소값 출력을 직접 찍어 보니 흐름을 다시 따라가 보니 문장으로 읽을 때는 알겠는데, 막상 코드에서 만나면 어디부터 봐야 할지 멈칫했다.

짧은 예제를 새로 짜 보면서 사용법가 실제로 어디에 걸리는지 확인했다.

실패 케이스를 먼저 적어 두고 구현했더니 되돌아가는 시간이 줄었다.

오늘은 C언어 구조체 사용법을 보면 어디부터 풀어야 할지 감이 온다.

내일 다시 보면 또 틀릴 수 있겠지만, 지금은 기준선이 생겼는 것 같다.

Author avatar

웨이호프

WordPress creator and blogger.

View all posts