반응형
크몽 '경매하는 개발자' 님의 경매/부동산/IT/사업 채널
경매하는 개발자
크몽 '경매하는 개발자' 님의 경매/부동산/IT/사업 채널
전체 방문자
오늘
어제
  • 분류 전체보기 (329)
    • IT (128)
      • 아두이노 (6)
      • C C++ (17)
      • C C++ 컴파일 에러 (3)
      • LINUX (3)
      • Git (1)
      • OpenGL (0)
      • IT 상식 (38)
      • EXCEL & VBA (9)
      • 정보처리기사 (20)
      • 무작정 웹사이트 만들기 (6)
      • 포토샵 (3)
      • 파이썬 & vscode (16)
      • 머신러닝 & 인공지능 & 데이터사이언스 (5)
    • 부동산 (91)
      • 부동산일반 (31)
      • 세금 (6)
      • 경매 (46)
      • 법, 소송 (8)
    • 개인사업자 (43)
      • 할 일 (11)
      • 꿀팁 (9)
      • 세금 (14)
      • 지원사업 (8)
    • 독후감 (25)
      • 독후감 (25)
    • 경제 (4)
      • 거시경제 (4)
    • Tistory (34)
      • 티스토리 (23)
      • 애드센스 (11)
    • 기타 (4)
      • 에세이 (2)
      • 퇴사준비 (2)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • 애드센스
  • 부가가치세
  • 온비드공매
  • 부의추월차선줄거리
  • 전자세금계산서
  • 부의추월차선요약
  • 온비드공동인증서
  • 티스토리애드센스
  • 부의추월차선독후감
  • 경매
  • 일반과세자
  • 세금계산서
  • 전입신고
  • 부의추월차선리뷰
  • 공매
  • 부의추월차선
  • 개인사업자
  • 온비드공인인증서
  • 확정일자
  • 부의추월차선서평

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
크몽 '경매하는 개발자' 님의 경매/부동산/IT/사업 채널

경매하는 개발자

[C/C++] struct와 typedef struct 차이
IT/C C++

[C/C++] struct와 typedef struct 차이

2022. 12. 9. 05:50
반응형

[C/C++] struct와 typedef struct 차이

이번 시간에는 대표적인 구조체 선언 방식인 typedef struct와 struct의 차이에 대해 알아보자.

반응형

 


※ 한줄요약

 - struct

   ① 별명없이 쓰는 구조체 (별명은 지을수 있지만, 기능이 없다)

   ② 선언시 'struct+구조체이름'을 적어줘야 함

 

  - typedef struct

   ① 별명을 지을 수 있는 구조체

   ② 선언시 '별명'만 적어주면 됨

 

 

(+) 구조체 이름과 별명은 같은 명칭으로 쓸 수 없기 때문에 관례상 구조체이름은 _(언더바)를 붙인다.

(예시) 

typedef struct _Person {      // 구조체 이름은 _Person
	char name[20];            // 구조체 멤버 1
	int age;                  // 구조체 멤버 2
	char address[100];        // 구조체 멤버 3
} Person;                     // typedef를 사용하여 구조체 별칭을 Person으로 정의
반응형

 


struct와 typedef struct 사용 예시

 

<main.h>

#include <stdio.h>
#include <iostream>
using namespace std;

struct _dinner { //struct 정의부
  int banana;
  int apple;
  int orange;
} dinner; //별명을 명기할수는 있으나 기능은 없음

typedef struct _lunch { //typedef 정의부
  int banana;
  int apple;
  int orange;
} lunch; //typedef의 별명

 

<main.cpp>

// C++ 예시
#include "main.h"

int main()
{
    struct _dinner dinner; //선언시 'struct 구조체이름'으로 선언
    lunch lunch; //선언시 '별명'으로 선언
    
    dinner.apple = 0;
    lunch.apple = 1;
    cout<<dinner.apple<<endl;  
    cout<<lunch.apple<<endl;
    return 0;
}

 

main문에서 구조체를 선언할 때 struct _dinner도 너무 길다고 생각되면 typedef를 사용하면 된다.

반응형

 

반응형

'IT > C C++' 카테고리의 다른 글

[C/C++] Break/Return/Continue 차이  (0) 2023.03.30
[C/C++] #Pragma pack(1) 의미  (0) 2022.12.09
[vscode] 액션을 선택해 주십시오. 액세스 거부 해결 방법  (0) 2022.06.24
[C/C++] 자료형의 크기 및 표현 범위  (0) 2022.06.09
[C/C++] 문자열 함수 정리  (0) 2022.05.20

    크몽 '경매하는 개발자' 님의 경매/부동산/IT/사업 채널

    'IT/C C++' 카테고리의 다른 글
    • [C/C++] Break/Return/Continue 차이
    • [C/C++] #Pragma pack(1) 의미
    • [vscode] 액션을 선택해 주십시오. 액세스 거부 해결 방법
    • [C/C++] 자료형의 크기 및 표현 범위
    크몽 '경매하는 개발자' 님의 경매/부동산/IT/사업 채널
    크몽 '경매하는 개발자' 님의 경매/부동산/IT/사업 채널
    크몽 '경매하는 개발자' 님의 경매/부동산/IT/사업 채널입니다.

    티스토리툴바