1. 유니온(union)
1) 선언과 사용방법에 있어서는 구조체와 동일하다.
2) 메모리 할당 방식에서 구조체와 차이가 있다.
> 멤버중에서 가장 큰 자료형의 크기로 메모리가 할당
> 멤버 변수들이 동일한 기억공간에 중복되어 할당
3) 예약어 union을 사용한다,
ex) union data{
char ch;
int num;
};
cf) struct data{
char ch;
int num;
};
2. 열거형
1) 사용자가 필요에 의해서 만들어 사용하는 자료형
2) 예약어 enum을 사용
3) 열거형으로 선언된 변수는 집합에 포함되는 상수값만을 갖게된다.
4) 처음에 기술된 열거상수는 0 을가지고 차례로 1씩 증가한다,
ex)
enum exam_{a,b,c,d,e};
exam_ test;
----------------------
#define a 0
#define b 1
#define c 2
#define d 3
#define e 4
위에 있는 enum에 의한 것과 define에 의한 것은 같은 것이다.
5) 열거형은 의미 파악이 어려운 것 대신 이해하기 쉬운 단어로 표현할 수 있게 한다.
6) 열거 상수에 수치 대입
ex)
enum exam_ {a = -1 , b, c = 25, d, e };
exam_ test;
------------------------------------
#define a -1
#define b 0
#define c 25
#define d 26
#define e 27
위에 있는 enum에 의한 것과 define에 의한 것은 같은 것이다.
열거 상수에 수치를 대입할 경우(어느 한 변수에 값이 지정 될 경우)
그 다음 상수는 이전 상수 +1이 된다.(다음 변수는 이전 변수값에 +1이 된다.)
1) 선언과 사용방법에 있어서는 구조체와 동일하다.
2) 메모리 할당 방식에서 구조체와 차이가 있다.
> 멤버중에서 가장 큰 자료형의 크기로 메모리가 할당
> 멤버 변수들이 동일한 기억공간에 중복되어 할당
3) 예약어 union을 사용한다,
ex) union data{
char ch;
int num;
};
cf) struct data{
char ch;
int num;
};
2. 열거형
1) 사용자가 필요에 의해서 만들어 사용하는 자료형
2) 예약어 enum을 사용
3) 열거형으로 선언된 변수는 집합에 포함되는 상수값만을 갖게된다.
4) 처음에 기술된 열거상수는 0 을가지고 차례로 1씩 증가한다,
ex)
enum exam_{a,b,c,d,e};
exam_ test;
----------------------
#define a 0
#define b 1
#define c 2
#define d 3
#define e 4
위에 있는 enum에 의한 것과 define에 의한 것은 같은 것이다.
5) 열거형은 의미 파악이 어려운 것 대신 이해하기 쉬운 단어로 표현할 수 있게 한다.
6) 열거 상수에 수치 대입
ex)
enum exam_ {a = -1 , b, c = 25, d, e };
exam_ test;
------------------------------------
#define a -1
#define b 0
#define c 25
#define d 26
#define e 27
위에 있는 enum에 의한 것과 define에 의한 것은 같은 것이다.
열거 상수에 수치를 대입할 경우(어느 한 변수에 값이 지정 될 경우)
그 다음 상수는 이전 상수 +1이 된다.(다음 변수는 이전 변수값에 +1이 된다.)