정처기 감자정처기 감자
C언어구조체

검색

검색어를 입력해 개념, 문제, 필기를 찾습니다.

C언어 typedef - 자료형에 새 이름 붙이기

코딩C언어
읽는데 5분 소요
처음 쓰인 날: 2026-02-03
마지막 수정일: 2026-03-21
조회수: —
선수학습(1개)
  • C언어 구조체

요약

C언어 typedef 키워드로 자료형에 별칭을 붙이는 방법을 배웁니다. struct와 함께 쓰는 패턴, 자기 참조 구조체, 포인터 타입 별칭까지 시험에 자주 출제되는 typedef 활용법을 정리합니다.

typedef 핵심 정리

아래에서 하나씩 배울 내용을 미리 정리한 표입니다.

개념설명예시
typedef자료형에 새 이름(별칭)을 붙이는 키워드typedef int INT;
사용 목적긴 타입명을 짧게, 코드 가독성 향상Queue q;
struct와 함께struct 키워드 생략 가능typedef struct {...} Name;
자기 참조 구조체구조체 내부에서 자신을 가리킬 때 struct 필수struct Node *next;
포인터 별칭포인터 타입에도 별칭 가능, 선언 함정 주의typedef int* IntPtr;

typedef란?

typedef는 type definition의 약자로, 기존 자료형에 새로운 이름(별칭) 을 붙이는 키워드입니다.

c
코드 하이라이팅 중…

기본 예시

c
코드 하이라이팅 중…
typedef는 새 자료형을 만드는 게 아닙니다
typedef는 기존 자료형에 별칭을 붙일 뿐, 새로운 자료형을 만드는 것이 아닙니다. INT와 int는 완전히 동일합니다.

struct와 함께 사용

typedef가 가장 많이 쓰이는 곳은 구조체와 함께 사용할 때입니다. 구조체를 아직 배우지 않았다면, 구조체 페이지를 먼저 읽고 오는 것을 추천합니다.

typedef 없이 struct 사용

c
코드 하이라이팅 중…

typedef와 함께 struct 사용

c
코드 하이라이팅 중…
방식변수 선언특징
typedef 없이struct Queue q;매번 struct 키워드 필요
typedef 사용Queue q;간결하고 가독성 좋음

typedef struct 패턴

시험 기출에서 가장 자주 등장하는 패턴입니다.

패턴 1: 익명 구조체 + typedef

c
코드 하이라이팅 중…

구조체 이름 없이 바로 별칭만 지정합니다. 가장 간결한 방식입니다.

패턴 2: 이름 있는 구조체 + typedef

c
코드 하이라이팅 중…

연결 리스트처럼 자기 자신을 참조하는 구조체는 내부에서 struct Node를 써야 합니다. typedef 별칭 Node는 구조체 정의가 완료된 후에야 사용할 수 있기 때문입니다.

자기 참조 구조체 Node의 메모리 구조
Node 구조체가 다음 Node를 가리키는 포인터를 가진 모습

왜 struct Node를 써야 하는지 잘못된 코드로 확인해 보겠습니다.

c
코드 하이라이팅 중…
자기 참조 구조체에서는 반드시 struct 키워드를 붙이세요
구조체 내부에서 자기 자신을 가리키는 포인터는 struct 키워드를 붙여야 합니다. typedef 별칭은 구조체 정의가 끝난 후에 사용 가능합니다.

포인터 타입에 typedef

포인터 타입에도 별칭을 붙일 수 있습니다. 포인터가 처음이라면 포인터 페이지를 먼저 읽어보세요.

c
코드 하이라이팅 중…

주의: 일반 선언과의 차이

c
코드 하이라이팅 중…

int *p1, p2;에서 *는 자료형이 아니라 변수 이름 p1 앞에만 붙는 기호입니다. 그래서 p2에는 *가 적용되지 않아 일반 int 변수가 됩니다. 두 변수를 모두 포인터로 선언하려면 int *p1, *p2;처럼 각각 *를 붙여야 합니다.

선언 방식p1 타입p2 타입
IntPtr p1, p2;int*int*
int *p1, p2;int*int
int *p1, p2에서 p2는 포인터가 아닙니다
일반 선언에서 *는 변수 이름에 붙는 기호입니다. 두 변수를 모두 포인터로 만들려면 int *p1, *p2;로 각각 *를 붙이거나, typedef를 사용하세요.

언제 typedef를 사용하나?

상황예시
struct 간결하게typedef struct {...} Queue;
긴 타입명 줄이기typedef unsigned long long ULL;
의미 부여typedef int Age; (나이를 저장하는 int)
이식성 1typedef int int32_t;

구조체를 사용하는 코드에서는 typedef가 거의 필수적으로 쓰입니다. 시험에서도 typedef struct 패턴이 매우 자주 출제되니 익숙해지세요.


정보처리기사 실기 대비 문제

문제를 불러오는 중이에요.
문제를 불러오는 중이에요.
문제를 불러오는 중이에요.

Footnotes

  1. 이식성이란 코드를 다른 컴퓨터나 운영체제에서도 동일하게 동작하도록 만드는 것을 말합니다. 예를 들어 int의 크기가 컴퓨터마다 다를 수 있는데, typedef로 int32_t를 정의해두면 항상 32비트 정수임을 보장할 수 있습니다. ↩


메가커피와 함께, 홈페이지 개선에 참여하세요! ☕
혹시 이용에 불편한 점이나 개선이 필요한 부분을 발견하셨나요? 댓글로 알려주시면 더 나은 감자가 될 수 있어요! 🥔 제보해주신 모든 분께 메가커피 기프티콘을 드립니다! (본인 이메일로 댓글 달아주셔야해요~)

관련 글

(41개)
제목태그업데이트시험
C언어 형변환 (Casting)
C언어코딩C언어
2026-05-15-
C언어 연결 리스트 뒤집기 (Reverse Linked List)
C언어코딩C언어
2026-05-06-
C언어 사용자 정의 함수 기초
C언어코딩C언어
2026-05-06-
C언어41개
제목태그업데이트시험
C언어 형변환 (Casting)
C언어코딩C언어
2026-05-15-
C언어 연결 리스트 뒤집기 (Reverse Linked List)
C언어코딩C언어
2026-05-06-
C언어 사용자 정의 함수 기초
C언어코딩C언어
2026-05-06-
C언어 sizeof 연산자
C언어코딩C언어
2026-05-06-
C언어 이진 트리 (Binary Tree)
C언어코딩C언어
2026-04-24-
C언어 중첩 구조체와 포인터 접근
C언어코딩C언어
2026-04-24-
C언어 함수 포인터 (Function Pointer)
C언어코딩C언어
2026-04-24-
배열 C언어 코딩 감자시험
감자시험C언어배열감자시험
2026-03-28응시
C언어 왕감자 정보처리기사 실기 모의 시험
C언어C언어
2026-03-27응시
제어문/반복문 C언어 코딩 감자시험
감자시험C언어제어문반복문
2026-03-28응시
연산자 C언어 코딩 감자시험
감자시험C언어연산자감자시험
2026-03-28응시
포인터 C언어 코딩 감자시험
감자시험C언어포인터감자시험
2026-03-28응시
문자열 C언어 코딩 감자시험
감자시험C언어문자열감자시험
2026-03-28응시
구조체 C언어 코딩 감자시험
감자시험C언어구조체감자시험
2026-03-28응시
C언어 구조체 배열
C언어코딩C언어
2026-03-21-
C언어 구조체 포인터
C언어코딩C언어
2026-04-24-
C언어 함수 프로토타입
C언어코딩C언어
2026-03-21-
C언어 입력 함수 - scanf, getchar, gets
C언어코딩C언어
2026-03-21-
C언어 출력 함수 - putchar, printf, puts
C언어코딩C언어
2026-09-29-
C언어 문자열 포인터 (char *)
C언어코딩C언어
2026-03-21-
C언어 포인터 산술 (Pointer Arithmetic)
C언어코딩C언어
2026-03-21-
C언어 재귀함수 (Recursion)
C언어코딩C언어
2026-03-21-
C언어 선택정렬 (Selection Sort)
C언어코딩C언어
2026-02-10-
C언어 스택 (Stack) - LIFO 자료구조
C언어코딩C언어
2026-03-21-
C언어 2차원 배열
C언어코딩C언어
2026-03-21-
C언어 원형 큐 (Circular Queue)
C언어코딩C언어
2026-03-21-
C언어 ctype.h 문자 판별 함수
C언어코딩C언어
2026-03-21-
C언어 자료형
C언어코딩C언어
2026-05-15-
C언어 이중 포인터 (Double Pointer)
C언어코딩C언어
2026-03-21-
C언어 동적 메모리 할당 (malloc, free)
C언어코딩C언어
2026-05-04-
C언어 헤더 파일과 #include
C언어코딩C언어
2026-03-21-
C언어 연결 리스트 (Linked List)
C언어코딩C언어
2026-05-06-
C언어 포인터 배열과 2차원 배열
C언어코딩C언어
2026-03-24-
C언어 포인터의 기초
C언어코딩C언어
2026-06-25-
C언어 큐 (Queue) - FIFO 자료구조
C언어코딩C언어
2026-03-21-
C언어 static 변수 - 값이 유지되는 변수
C언어코딩C언어
2026-03-21-
C언어 포인터를 이용한 문자열 복사
C언어코딩C언어
2026-07-09-
C언어 문자열 뒤집기 (포인터 활용)
C언어코딩C언어
2026-03-21-
C언어 구조체
C언어코딩C언어
2026-03-20-
C언어 삼항 연산자
C언어코딩C언어
2026-03-21-
전설의 완전수 문제 - C언어
C언어코딩C언어
2025-09-12-
정처기 감자정처기 감자

정보처리기사 합격
도와줄라고 하는 감자

실기 이론

  • 이론 공부법
  • DB
  • 네트워크/OS
  • SW 설계
  • SW 개발
  • 보안/신기술

시험 응시

  • 시험장 찾기
  • 원서 접수
  • 응시자격 서류

요약 PDF

  • 26년 3회 이론 압축
  • 26년 3회 코딩 압축
  • 초압축 25년 3회
  • 압축 25년 3회

기출문제

  • 전체 기출문제
  • 25년 3회
  • 25년 2회
  • 문제 포럼

감자 이용권

  • 이용권 구매

실기 이론

  • 이론 공부법
  • DB
  • 네트워크/OS
  • SW 설계
  • SW 개발
  • 보안/신기술

시험 응시

  • 시험장 찾기
  • 원서 접수
  • 응시자격 서류

요약 PDF

  • 26년 3회 이론 압축
  • 26년 3회 코딩 압축
  • 초압축 25년 3회
  • 압축 25년 3회

기출문제

  • 전체 기출문제
  • 25년 3회
  • 25년 2회
  • 문제 포럼

감자 이용권

  • 이용권 구매
© 2025 재현기획개발. All rights reserved.
  • 정처기 감자의 시작
  • 업데이트 로그
  • 개인정보 처리방침
  • 이용약관
상호명 : 재현기획개발 / 주소: 서울특별시 영등포구 영등포로 150, 지하1층 108호 L145 가라지(당산동1가, 생각공장 당산) / 대표: 김재현 / 전화: 010-8158-7127 / 통신판매업신고: 제2025-서울영등포-1569호 / 이메일: contact@edugamja.com / 사업자등록번호: 573-51-00999