C 언어 - 라이브러리 만들어보기 (모사 해보기)

컴퓨터/C

728x90
반응형

라이브러리를 모사해 보자 

라이브러리의 개념을 한번 적용해서 프로그래밍을 조금 더 윤택하게 하는 방법에 대하여 알아보겠습니다. 

본문에서는 정말 완성된 형태의 라이브러리를 만들기에는 개념과 방법 등 더 많은 내용을 담아야 하기 때문에, 간단하게 라이브러리의 형태를 가진 소스코드를 만들고 사용하는 방법에 대하여 알아보도록 하겠습니다.

 

준비하기

라이브러리 형태를 이용하여 프로그래밍을 하기 위해서는 최소 3가지의 구분이 되어있어야 될 것입니다. 

 

  • 라이브러리 관련
    • 라이브러리 소스코드 파일
    • 라이브러리 헤더 파일
  • 메인 프그로그램 파일
    • main함수가 들어있는 구동되는 프로그램 파일

이 3가지 형태의 파일을 만들어 보도록 합시다.

Visual studio를 이용하여 다음과 같은 파일을 만들었습니다.

  • Mylib.h - 라이브러리 헤더 파일
  • Mylib.c - 라이브러리 소스 파일
  • Source.c - main함수가 들어있는 구동 파일

폴더의 경우 사용자의 편의에 의해 제공되며 폴더의 구분이 달라도 상관없습니다.

라이브러리 소스파일 작성하기

우선 라이브러리화 시킬 함수들을 모아 실질적인 소스코드가 있는 부분을 구현해야 됩니다. 간단하게 한 가지 소스코드를 만들어 보도록 하겠습니다.

#include<stdio.h>
#include<stdlib.h>
#include<string.h>

void myfunc()
{
	printf("내가만든 라이브러리의 함수 \n");
}

위와 같이 라이브러리화 시킬 소스코드를 작성합니다.

 

라이브러리 헤더 파일 작성하기 

라이브러리 소스코드 파일을 참조하기 위해 함수의 원형들이 제공되는 헤더 파일을 만들어 보도록 합시다. 동일한 이름에 확장자 명. h를 가지는 파일을 만듭니다.

 

#pragma once
void myfunc();

위와 같이 함수의 원형을 선언하여 해당 Mylib의 라이브러리 안에는 myfunc라는 함수가 있다는 것을 알려 줍니다.

 

#pragma once는 이 파일은 한 번만 추가하겠다는 뜻의 전처리기입니다. 즉, main함수가 구동하는 소스코드에서 중복하게 #inlucde로 헤더파일을 불러도 한번만 읽게 해주기 위한 전처리기 입니다.

 

라이브러리 include 하고 사용해보기 

이제 라이브러리를 모사하기 위한 기초 형태를 모두 만들었습니다. 이제 사용해보도록 하겠습니다.

Source.c에서 사용하면 아래와 같습니다.

#include "Mylib.h"

int main()
{
	myfunc();
    
    printf("그냥 쓸수 있어요 \n");
	return 0;
}

위처럼 #include "Mylib.h"를 하여 사용하고자 하는 소스코드에 추가하여 사용할 수 있습니다. 또한 Mylib.c에는 표준 입출력 헤더를 포함시켜 놨기 때문에 다시 포함시키지 않고 사용할 수 있습니다.

 

이런 식으로 프로그래밍을 효율적으로 할 수 있습니다.

728x90
반응형

Commnet

G91개발일지

Gon91(지구일)

91년생 공학엔지니어의 개발일지

TODAY :

YESTER DAY :

TOTAL :