할껀하고놀자

[C++]define와 typedef의 차이점 본문

[IT]

[C++]define와 typedef의 차이점

working_hard 2018. 2. 15. 00:30
728x90

안녕하세요! 오늘은 c++를 공부하면서 헷갈렸던 개념에 대해서 한번 되짚어보고자 포스팅을 하게 되었습니다. 언뜻보면 유사한 개념인 것 같지만 차이점은 확실히 존재하는 define와 typedef에 대해서 공부해 보도록 하겠습니다. 


define은 말 그대로 치환한다는 의미를 가지고 있습니다. 사용 문법은 #define 을 이용하는데요. 


예를들어서 yoyo를 1의 의미로 쓰고 싶다면 #define yoyo 1; 이라고 쓰시면 된답니다.  


한번 전체 코드로 yoyo를 나타내보도록 하겠습니다.



라고 한다면 출력은 1이 되겠지요!



잘 나온것을 확인할 수 있네요.


다음으로는 typedef에 대해서 알아보도록 하겠습니다.


typedef는 새로운 자료형을 선언한다는 것입니다. int, char처럼 아예 새로운 자료형으로 표현이 가능해진다는 것이죠.


문법은 typedef int yoyo; 정도로 표현할 수 있겠네요. 역시 간단한 코드를 짜볼게요!



int는 정수만 나올 수 있는 자료형이죠! 하지만 이 이름을 세련되게 yoyo라고 바꾸어 주었습니다. 하하하..

yoyo는 이제 정수만 나올 수 있는 자료형이 되었어요. 


마찬가지로 결과값은 1이 나오게 됩니다.



이상 typedef와 define에 대해서 알아보았는데요. 간단하게 표로 정리해 볼게요!


 

 typedef

define 

의미 

새로운 자료형 선언 

단순 치환 

typedef int yoyo;

#define yoyo 1;


즐거운 코딩생활 하세요~!


Comments