본문으로 이동

미디어위키 1.45 안정화가 거의 끝났습니다. 다만 Flow 확장 기능 관련 이슈가 있어서 대체하는 작업을 수행할 계획입니다.

  1. 큰숲백과:청사진에서 위키 발전의 대략적인 방향성을 제시했습니다. 의견이 있으신 분은 큰숲백과토론:청사진에서 의견을 남겨주시면 좋겠습니다.
  2. 기능상의 오류로 지원하지 않고 있는 기능에 대해서는 큰숲백과토론:이슈 트래커에 요약했습니다. 참고하시기 바랍니다.
  3. 데이터베이스 덤프 받고싶으신 분은 큰숲백과 가입 후에 사용자토론:Bigforest에 의견 남겨주시면 ftp 주소, 계정, 비밀번호를 특수:EmailUser를 통해서 공개할 예정입니다.

작은숲:위키노트/초보자를 위한 C 언어 강의/typedef 문

큰숲백과, 나무를 보지 말고 큰 숲을 보라.

typedef 문이 하는 일은 #define 선행처리기가 하는 일과 비슷하다. 이름 자체에서 보면 알 수 있듯이 #define 선행처리기는 매크로 상수, 혹은 매크로 함수를 정의하는 데 사용되고, typedef 문은 데이터형(data type)을 다른 이름으로 부르고자 할 때 사용한다. typedef 문은 반드시 데이터형에서만 사용할 수 있다. 다음 예를 보도록 하자.

typedef unsigned long int UnLong;
UnLong x, y, z;

이렇게 typedef 문을 이용해서 unsigned long int 형을 UnLong 이라는 이름을 이용해서 사용할 수 있도록 만들어준다. 그럼 이 다음부터는 unsigned long int 형을 쓸 일이 있으면, UnLong 이라고 쓰면 된다. 즉, 위에서 x, y, z 변수의 데이터형은 곧 unsigned long int 형이 되는 것이다. 이처럼 typedef 문은 긴 이름의 데이터형을 짧은 이름으로 나타내기 위해서 사용한다. 즉, 게으른 프로그래머를 위한 축복이라고 할 수 있다. 그리고, 한가지 주의할 것은 C 언어에서는 반드시 대소문자를 구분해야 한다! 잊지 말자. 즉, 예를 들어,

struct complex
{    int real;
    int image;
};
typedef struct complex Complex;
...
Complex x, y;

이것은 구조체 complex 형을 Complex라는 이름으로 정의해준 것이다. 앞으로 struct complex 형을 쓸 일이 있다면 Complex라고 쓰면 된다. 즉, 위에서 x, y 변수는 Complex라는 데이터형을 갖는 변수로 선언이 되었는데 이는 결국 struct complex 데이터형이 되는 것이다. 여기에서 Complexcomplex는 다른 의미를 갖는다. Complexstruct complex를 줄여서 쓰기 위해 typedef 한 것이고, complex는 구조체 태그이다.

이 작은숲 문서의 출처는 위키노트의 위키노트: 문서입니다.