본문 바로가기
공부/C, C++

[C] 구조체

by 김샤랑 2022. 1. 2.

[C] 구조체


- 구조체란 

사용자 정의 자료형 User define data type 

struct: 구조체라고 부른다.

 


-typedef란 

typedef: 타입을 재정의 해준다.

 

  • typedef 예시
typedef int INT;

 

예시처럼 적을 시 INT라고 적어도 프로그램은 int라고 인식한다. (INT -> int 인식)


 

typedef struct _tagMyST
{
  int a;
  float f;
} MYST;

int main()
{
  MYST t;  // 이 구조체는 데이터 타입이 int 하나, float 하나 있기 때문에 8byte이다.

  return 0;
}

- C 스타일

struct _tagMyST라고 매번 쓰면 불편하니까 전체를 MYST라고 쓰겠다고 typedef을 해주어서 MYST라고 쓴다.

c에서는 구조체를 쓸 때  단순히 _tagMyST라고 변수를 쓸 수 있는 게 아니라 struct를 붙여줘야 한다.

 

- C++ 스타일

C++에서는 struct를 굳이 안 쓰고 _tagMyST라고 써도 된다.

 

일반적으로 양쪽 다 문제없는 범용성 있는 사용을 추구해서 C++에서도 C처럼 쓸 때가 많다. 

 

 

'공부 > C, C++' 카테고리의 다른 글

[C] const, const 값 바꾸기  (0) 2022.01.04
[C] 포인터 Pointer  (0) 2022.01.03
[C] 변수(지역 변수, 전역 변수, 정적 변수, 외부 변수)  (0) 2022.01.02
[C] 분할 구현  (0) 2022.01.02
[C] 배열  (0) 2022.01.01

댓글