typedef는 새로운 데이터형을 만드는 경우에 사용된다. 아래의 코드는 구조체를 TEST라는 데이터형으로 만들어서 사용하는 예.


#include <stdio.h>

typedef struct
{
    char ch;
    int num;
}TEST;

int main()
{
    TEST T;

    T.ch='A';
    T.num=200;

    printf("%c ",T.ch);
    printf("%d ",T.num);

    return 0;


'프로그래밍 > Daily Coding' 카테고리의 다른 글

열거형 기본 형태  (0) 2014.02.19
공용체 사용  (0) 2014.02.10
구조체 사용  (0) 2014.02.05
NULL 문자  (0) 2014.02.05
포인터 이해하기  (0) 2014.02.04

#define Zero 0

#define One 1

...

#define Five 5


 이렇게 일일이 모두 선언하는 것보다 효율적인 방법으로 열거형을 사용할 수 있다.



#include <stdio.h>

enum {Zero=0, One, Two, Three, Four, Five};

int main()
{
    printf("%d ",Zero);
    printf("%d ",One);
    printf("%d ",Two);
    printf("%d ",Three);
    printf("%d ",Four);
    printf("%d ",Five);

    return 0;


 여기서 Zero에 초기값을 설정하지 않았을 경우에는 자동으로 0부터 시작합니다. 대신 Zero=5로 초기화 했다면 다음 상수의 값은 +1씩 증가됩니다. 따라서 5 6 7 8 9 10 이라는 결과가 출력될 것 입니다.

'프로그래밍 > Daily Coding' 카테고리의 다른 글

데이터형 정의하기 (typedef)  (0) 2014.02.20
공용체 사용  (0) 2014.02.10
구조체 사용  (0) 2014.02.05
NULL 문자  (0) 2014.02.05
포인터 이해하기  (0) 2014.02.04

 공용체의 문법적인 형태는 구조체와 비슷하다. 즉, 사용 방법이 유사하다. 하지만 전혀 다른 특징을 가진다.

공용체는 변수가 사용하는 메모리 공간이 중첩된다. 따라서 공용체의 멤버 변수는 한 번에 하나만 사용할 수 있다.

흔히들 메모리를 공유한다고 표현한다.


#include <stdio.h>

union test
{
    int num1;
    float num2;
};

int main()
{
    union test T;
    
    T.num1=0;
    T.num2=1.1;

    printf("T.num1 = %d\n",T.num1);
    printf("T.num2 = %f\n",T.num2);

    return 0;
}


 위 코드에서 멤버 변수가 사용하는 실제 메모리의 모습은 아래와 같다.


1000번지        1001        1002        1003

 num1

num2


 출력 값을 보면 num1이 0으로 나오지 않는다. 그 이유는 먼저 num1을 0으로 초기화 했지만 그 후 num2에 1.1을 대입하면서 중첩되었기 때문이다.

'프로그래밍 > Daily Coding' 카테고리의 다른 글

데이터형 정의하기 (typedef)  (0) 2014.02.20
열거형 기본 형태  (0) 2014.02.19
구조체 사용  (0) 2014.02.05
NULL 문자  (0) 2014.02.05
포인터 이해하기  (0) 2014.02.04

+ Recent posts