훈, IT 공부/C,C++,MFC

C++ 에서의 .h 헤더파일 확장자 사용하지 않는 이유

IT훈이 2023. 9. 12.
반응형

 C++언어를 주 언어로 사용하다보면, 당연하게 생각하면서 사용하다보니 실제 사용된 이유를 잊고 사용하는 코드들이 종종있습니다. C++언어를 통한 개발에서는 이러한 내용의 기초를 세워두는 것이 중요한데요. 특히나 전처리기 include를 통해서 선언하는 헤더파일에 관하여 기본적인 내용을 정리해보려합니다.

 

 

안녕하세요 IT훈이입니다 😁


 

.h 헤더를 사용할때와 사용하지 않을때

#include <iostream> //표준헤더
#include <stdafx.h> //사용자정의헤더

iostream은 분명 헤더파일임에도 불구하고,

C++에서는 iostream.h라고 표기하지 않고

iostream이라고 표기합니다.

 

그렇다고해서

iostream이 iostream.h은

같은파일이 아닌 서로 다른파일입니다.

 

그렇다면 왜 이렇게 헤더를 생략하는 것일까요?

 

C++에서는 사용자정의 헤더가 아닌

표준으로 사용하는 헤더 파일들에는

모두 .h 확장명을 생략하는 것을 약속했습니다.

 

사용자 헤더와 표준 헤더를 분리하기 위함

이라고 생각합니다.

 

그렇기 때문에 stdafx.h의 경우에는

사용자가 정의한 헤더파일이기 때문에

.h확장자가 붙는것을 확인하실 수 있습니다.

 


 

C++을 사용하시다보면, 여러가지 헤더파일을 선언하면서 사용하게 될텐데요. 헤더파일에 .h확장자가 없다고해서 그냥 넘어가지 말고, '표준 헤더파일 이라서 저렇게 표기했구나' 라고 인지하고 넘어가면 좋을 것 같습니다.

 


 

 warning C4996 10초만에 해결하는법 3가지 정리, Visual Studio 2022

 

warning C4996 10초만에 해결하는법 3가지 정리, Visual Studio 2022

C4996 오류는 초기에 C++으로 개발하다보면, 정말 자주 볼 수 있는 에러입니다. C4996에러가 뜨면서 빌드가 안되고, 분명 예제사이트에서는 잘만 사용하던데, 나만 안되는 이유를 찾기 정말 어려웠

master-hun.tistory.com

C/C++ IPropertyStore / 파일 속성 모두 얻어오기 .doc .docs .xlsx .pptx

 

C/C++ IPropertyStore / 파일 속성 모두 얻어오기 .doc .docs .xlsx .pptx

C/C++ IPropertyStore / 파일 속성 모두 얻어오기 .doc .docs .xlsx .pptx IPropertyStore() 개발을 진행하다보면 별 특이한 경우를 많이 경험하게 됩니다. 개발을 하다가 발생된 이슈로 인한 기능정리를 위한 포

master-hun.tistory.com

C++ 프로세스의 권한을 관리자 혹은 일반 사용자 권한으로 실행하기

 

C++ 프로세스의 권한을 관리자 혹은 일반 사용자 권한으로 실행하기

일하다보면 권한에서 벗어날 수가 없는 상황히 종종 일어난다. 시간이 지나서 잊을때가 되면 다시금 나타나는 권한문제 때문에 정리를 해두어야 미래의 내가 편하겠다는 생각에 정리를 해보려

master-hun.tistory.com

 

반응형

댓글