c언어 - 구조체

구조체 정의
struct 구조체이름{
    자료형 맴버이름;
};

구조체 변수 선언
struct 구조체이름 변수이름;

별칭(alias) - struct를 키워드 생략
typedef struct 구조체이름{
    자료형 맴버이름;
} 구조체별칭;

익명 구조체(anonymous structure) - 구조체 이름 생략
typedef struct{
    자료형 맴버이름;
} 구조체별칭;



1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
// 구조체 정의
struct Person{
    char name[20];
    int age;
    char adress[100]
};
 
// 구조체 변수 선언
struct Person p1;
 
 
// ----------------------------------------------------------------------
// 구조체 변수 정의와 선언
struct Person{
    char name[20];
    int age;
    char adress[100]
} p1;
 
 
// ----------------------------------------------------------------------
// 구조체 변수를 선언하는 동시에 초기화 하는방법도 있음. 가독성에 별로 안좋을듯.
struct Person p1 = {.name ="name", .age=30, .adress = "주소"};
 
 
// ----------------------------------------------------------------------
// 별칭(alias)
typedef struct _Person {   // 구조체 이름은 _Person
    char name[20];            // 구조체 멤버 1
    int age;                  // 구조체 멤버 2
    char address[100];        // 구조체 멤버 3
} Person;                  // typedef를 사용하여 구조체 별칭을 Person으로 정의
 
// 구조체 별칭 Person으로 변수 선언
Person p1;
 
 
// ----------------------------------------------------------------------
// 익명 구조체(anonymous structure)
typedef struct {   // 구조체 이름이 없는 익명 구조체
    char name[20];        // 구조체 멤버 1
    int age;              // 구조체 멤버 2
    char address[100];    // 구조체 멤버 3
} Person;          // typedef를 사용하여 구조체 별칭을 Person으로 정의
 
 // 구조체 별칭 Person으로 변수 선언
Person p1;   
cs


공부 : 코딩도장 c 언어

댓글