자료구조(7) 문제(3)풀이/ typedef

지난 시간 문제에 대한 선생님 코드

공유 폴더에서 안가져옴 -> 다음에 가져오기.

typedef 와 구조체 선언

typedef : 자료형 별명, 별명, ,,,,

자료형에 별명을 붙이는 키워드가 typedef다. 같은 형태와 같은 성격의 데이터들을 보다 쉽게 구분하고 관리하기 위해서 사용한다. 즉 내가 편하기 위해서 사용하는거고다. 대문자를 권장한다.

예를 들어

int age; int select; int no; 가 있다고 하자. typedef int AGE, NUM; typedef int SEL; 이런 식으로 사용해서 int라는 자료형을 다음과 같이 사용할 수 있는 거다.

즉 변수명 말고 자료형으로는 구분이 안되기에 자료형만 보고도 구분이 가능하도록, 그렇게 관리하도록 만들어준 것이다.

보통 이렇게 쓴다.

struct info{
	char name[10];
    int age;
};

이렇게 쓰면 struct info를 매번 써줘야 한다. 선언할 때마다.

그래서 보통 이렇게 쓴다.

typedef struct {
	char name[10];
    int age;
}IN,*PI;

배열은 어차피 대괄호가 들어가야하니까 생성 불가.

그런데 선생님은 *PI를 별로 안좋아한다.

int main(void){
    int su;
    printf("사람 수 입력: ");
    scanf_s("%d", &su);

    IN *pt = (PI)malloc(sizeof(IN)*su);)
    이렇게 쓸 수 있는데 구분이 잘 안가잖아.
}

그래서 그냥 *PI는 잘 선언하지 않는다고 한다.

이런 식으로 typedef를 사용한다.


참고자료

kg아이티뱅크학원 (자료구조 수업)

0%