다른 글
typedef로 정의한 구조체의 포인터 별칭
아래 코드와 같이 typedef로 정의한 구조체의 별칭에 포인터가 추가적으로 존재하는것을 여러 소스코드에서 종종 볼 수 있다.
typedef struct test_st { int data; }test_st, *test_st_pointer;
typedef struct는 여러개의 별칭을 가질 수 있다. typedef를 사용하여 구조체를 선언할 때 struct를 생략했듯이 포인터 별칭을 두게 되면 포인터 구조체를 선언할 때 간편하다.
#include <stdio.h> #include <stdlib.h> #include <stdint.h> typedef struct test_st { int data; }test_st, *test_st_pointer; int main() { test_st test; test_st_pointer test_pointer; // test_st_pointer *test_pointer; ----> 틀린 선언 방법 test_pointer = &test; test.data = 10; printf("%d\n", test_pointer->data); }