Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | 31 |
Tags
- TCP
- HTTP
- Error Code: 1055
- BSD소켓
- DNS
- mysql
- group by
- ip
- SQL
- web-proxy lab
- strcat
- https://firecatlibrary.tistory.com/49?category=874970
- C언어
- 정글#정글사관학교#3기#내일#기대#설렘#희망#노력
- https://coding-factory.tistory.com/641
- strcpy
Archives
- Today
- Total
매일을 설렘으로
[C언어] typedef/enum 본문
typedef 함수 (형 재정의)
특정 element에 대해 미리 type (int, long, double, pointer 등) 지정해서 사용하는 함수이다.
문법은 다음과 같다.
typedef type element
- 장점 : 이식성과 수정 효율성이 좋다. 예를 들어, 프로그래밍 컨셉이 바껴 특정 element의 type을 int형 -> double형으로 변경할때
// typedef 사용 예시
typedef int key_t;
// 포인터형도 typedef를 사용해서 *없이 선언할 수 있다.
typedef int* intPtr;
intPtr p, q;
열거형(enum)
- 변수가 갖는 값에 의미를 부여해 프로그램 가독성을 높임
- 컴파일러는 열거형 멤버들을 정수형 상수로 인식 (문자도 indexing으로 사용 가능)
enum의 문법은 다음과 같다.
//문법
enum 열거형 이름{상수 이름};
//ex
enum week{SUN, MON, TUE, WED, THU, FRI, SAT};
//0~6이라는 숫자로도 인식한다.
#include <stdio.h>
enum season
{
SPRING, SUMMER = 2, FALL, WINTER
};
int main(void)
{//enum이라는 키워드를 적어야하는데 Typedef를 사용하면 안적어도됨.
enum season birthday = FALL;
printf("birthday : %d \n", birthday);
return 0;
}
Switch 조건문과 같이 쓰면 좋다.
#include <stdio.h>
enum Action {
Attack = 1,
Move,
Jump,
Hide
};
int main()
{
enum Action skill; // 열거형 변수 선언
skill = Attack; // 열거형 값 할당
switch (skill)
{
case Attack: // 열거형 값이 Attack일 때
printf("Attack\n");
break;
case Move: // 열거형 값이 Move일 때
printf("Move\n");
break;
case Jump: // 열거형 값이 Jump일 때
printf("Jump\n");
break;
case Hide: // 열거형 값이 Hide일 때
printf("Hide\n");
break;
default:
break;
}
return 0;
}
'CS > 자료구조' 카테고리의 다른 글
[C언어] Red-Black Tree (0) | 2021.12.09 |
---|---|
[C언어] stack 자료 구조 구현 (0) | 2021.12.04 |
[자료구조] 이진 트리 및 이진 검색 트리 (0) | 2021.11.25 |