Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
31 |
Tags
- conda오류
- stm32f 시리즈를 이용한 arm cortex-m3/m4 구조와 응용
- anaconda오류
- 리눅스 오류
- 머신러닝
- pytorch tensor
- 공부
- conda: command not found
- 일귀
- 텐서
- torch
- Ai
- essential deep learning paper reading
- ML
- pyTorch
- Tensor
- 리눅스
- conda
- Machine Learning
Archives
- Today
- Total
Embedded World
[C] 분할 컴파일 본문
하나의 프로그램을 여러 사람이 나누어 개발할 수 있다면 프로그램의 크기가 커도 충분히 개발 기간을 줄일 수 있다. 단 2가지 문제를 해결해야 한다.
하나는 개별적으로 코드를 작성하고 컴파일 및 에러 수정을 할 수 있어야 한다. 두 번째는 각 개발자들 간의 데이터 공유와 코드 재활용이 가능해야 한다. C언어는 분할 컴파일을 통해 여러 개의 소스 코드를 각각 독립적으로 작성하고 컴파일 할 수 있으며 컴파일된 개체 파일을 링크해 하나의 큰 프로그램으로 만들 수 있다.
또한 extern 선언을 통해 파일들 간 데이터를 공유하고 전처리 지시자로 코드를 쉽게 재활용할 수 있다.
분할 컴파일을 위해 파일을 나눌 땐 주의할 것이 있다. 각 파일을 독립적으로 컴파일 할 수 있도록 필요한 선언을 포함해야 한다는 것이다. 즉, 1.c의 main함수에서 2.c에서 정의한 average()함수를 사용한다 하면, 1.c에선 average()함수에 대한 프로토타입 선언을 해야하는 것이다.
reference 책 "혼자서 공부하는 C언어"