00 개요
- typedef가 뭔지 알아보고자 함
01 typedef란
1. 정의
- 'type' 자료 'define' 정의하다
- 즉, 기존 자료형 (type)에 새롭게 별칭을 부여하는 키워드(keyword)
2. 문법
typedef 기존type 별칭;
02 typedef 사용
1. 구조체에 별칭 부여
- NOTE: 관례상 구조체이름(tag) 앞에 _(underslash) 또는 tag_ 또는 tag를 붙여줌
1) 방법 1
struct _구조체이름 {
자료형 멤버이름;
자료형 멤버이름;
...
};
typedef struct _구조체이름 구조체별칭;
- 예시
#include <stdio.h>
struct _data {
int data1;
char * data2; // 또는 char data2[20];
};
typedef struct _data data_alias; // struct _data에 'data_alias'라는 별칭 부여
main() {
data_alias dts1; // 'data_alias'라는 별칭으로 구조체 변수 'dts1' 선언
dts1.data1 = 2024;
dts1.data2 = "hello"; // 또는 strcpy_s(dts1.data2, 20, "hello");
printf("%d\n", dts1.data1);
printf("%s", dts1.data2);
}
- output
2) 방법 2
typedef struct _구조체이름 {
자료형 멤버이름;
자료형 멤버이름;
...
} 구조체별칭;
- 예시
#include <stdio.h>
typedef struct _data {
int data1;
char * data2; // 또는 char data2[20];
} data_alias;
main() {
data_alias dts1;
dts1.data1 = 2024;
dts1.data2 = "hello"; // 또는 strcpy_s(dts1.data2, 20, "hello");
printf("%d\n", dts1.data1);
printf("%s", dts1.data2);
}
- output
참조
'C' 카테고리의 다른 글
extern와 static (키워드) (0) | 2024.06.24 |
---|---|
Declaration vs Definition (선언과 정의) (0) | 2024.06.24 |
strcpy() strcpy_s() (문자열 복사 함수) (0) | 2024.06.21 |
struct (구조체) (0) | 2024.06.21 |
sizeof() 연산자 (0) | 2024.06.21 |