늦음 밤에 허기를 달래기 위해서 편의점을 갈 수 있고, 직접 만들어 먹을 수도 있다.
편의점은 바로 만들어 먹을 수 있고, 아니면 내 입맛에 맞게 직접 만들어 먹을 수도 있다.
코딩도 마찬가지로 내가 직접 코딩을 할 수도 있고,
이미 만들어져 있는 코드(라이브러리)를 사용할 수도 있다.
라이브러리 이해
정의
- 서브루틴이나 함수들이 저장된 파일들의 모음
- 보통 컴파일된 형태인 목적코드 형태로 존재
- 프로그램에서 공통 사용 가능한 기능을 포함하고 있는 오브젝트 파일
- 사용자의 프로그램과 링크되어, 실행이 가능한 완전한 프로그램
사용 이유
- 자주 사용되는 특정한 기능을 main 함수에서 분리해 놓음. ex) printf(), scanf() 등등
ㅁ 프로그램 유지
ㅁ 쉬운 디버깅
ㅁ 컴파일 시간 단축
분류
- 정적 라이브러리
: 프로그램을 컴파일하여 생성되는 바이너리에 적재
- 공유 라이브러리
: 프로그램이 시작될 때 적재
: 하나의 프로그램에서 적재 후 사용하면 동일 라이브러리를 사용하는 다른 프로그램이 이용
- 동적 라이브러리
: 바이너리가 실행 후 적재
: 플러그인 모듈 구현에 적합
: 라이브러리 개선 등에 효과적인 형태 -> 재컴파일 필요X (정적은 재컴파일 필요)
표준 라이브러리
- 작업에 필요한 라이브러리 함수 검색
- 헤더파일과 함수 원형 파악
- include와 매개변수 기술
C Standard Library Reference Website
http://www.tutorialspoint.com/c_standard_library
http://www.programiz.com/c-programming/library-function
http://www.cplusplus.com/reference/clibrary
Visual Studio에서 만들기
- 정적 라이브러리 프로젝트로 생성
- 헤더파일과 소스코드를 작성
- lib 빌드
DEV C++에서 만들기
- 정적 라이브러리 프로젝트로 생성
- 헤더파일과 소스코드를 작성
- 오브젝트 파일 생성
- .a 파일 생성
'프로그래밍 언어 공부 > C' 카테고리의 다른 글
도서관리 시스템 구현 (0) | 2022.01.13 |
---|---|
문자 처리 라이브러리 (0) | 2022.01.12 |
어플리케이션 최적화(Application Optimization) (0) | 2022.01.12 |
디버깅(Dubugging) (0) | 2022.01.11 |
컴퓨터 언어 종류 (0) | 2022.01.11 |