본문 바로가기
아두이노

아두이노와 C/C++ 이야기 -#3

by 오징어땅콩2 2020. 1. 10.
반응형

이전글을 봤다면 .h와 .cpp 두가지 확장자를 보았을것이다.

모든것을 한번에 설명하기는 어렵지만, 관례적으로 같은 이름의 파일을 확장자만 다르게 두개 만들자.

이것은 C/C++언어에서 통용되는 규칙이므로 그냥 그렇게 하자.

물론 30년 이상 고수라면 꼭 그렇게 하지는 않는다.

여기서 주의 해야 할 것은 선언과 정의를 공부해야 한다.

C/C++의 선언과 정의가 중요하다.

대부분 책에서는 가르치지 않고 생략하기 때문에 잘 모른다.

물론 하나의 파일에 모두 코딩한다면 잘 몰라도 된다.

여러개의 파일로 나누거나 원도우 프로그래밍, 리눅스쪽으로 온다면 중요한 개념이다.

 

변수의 선언과 정의 부터 알아보자.

변수는 정의만 있고 선언은 없다. 그렇지만 꼭 선언이 없는것은 아니다.

.h 파일에는 선언을 해야 하고 .cpp파일에는 정의를 해야 한다.

변수의 선언은 다른 파일에서 참조하는 경우만 필요하다. 

그래서 꼭 필요한것은 아니다.

만약 이 규칙을 지키지 않는다면 수많은 링크 에러가 당신을 괴롭게 할것이다.

 

1
2
3
4
//변수의 정의 이다.
//.cpp
int C;
 

 

 

1
2
3
4
//변수의 선언 이다.
//.h
extern int C;
 

 

댓글