C언어 구조체 배열 선언 및 초기화 코드

같은 형태의 데이터를 여러 개 다룰 때는 구조체 배열을 사용한다. 사람의 이름, 나이, 전화번호, 주소처럼 서로 관련된 값을 하나의 구조체로 묶을 수 있다.




#include <stdio.h>

struct Address {
    char name[20];
    int age;
    char tel[20];
    char addr[80];
};

int main(void) {
    struct Address list[] = {
        { "Mr. Kim", 23, "123-456-7890", "Seoul Gangnam" },
        { "Mr. Park", 35, "123-456-7891", "Seoul Sinchon" },
        { "Mr. Lee", 19, "123-456-7892", "Seoul Myeongdong" },
    };

    for (size_t i = 0; i < sizeof list / sizeof list[0]; ++i) {
        printf("%s %d %s %s\n", list[i].name, list[i].age, list[i].tel, list[i].addr);
    }
}




배열 길이는 직접 숫자로 관리하기보다 sizeof list / sizeof list[0]처럼 계산하면 초기화 요소가 바뀌어도 반복 범위를 맞출 수 있다.

Comments

댓글을 불러오고 있습니다.