라벨이 extern C인 게시물 표시

[C/C++] extern "C"

우선 참조한 블로그 들 debug me 님의 extern "C" 제대로 생각해보기 Flatinum 님의 [C/C++] extern "C"와 네임 맹글링 japa 님의 [링크에러 LNK2019] C++에서 C 함수 사용하기 [링크에러 LNK2019] C++에서 C 함수 사용하기 출처: https://ospace.tistory.com/187 [JaPa2] [링크에러 LNK2019] C++에서 C 함수 사용하기 출처: https://ospace.tistory.com/187 [JaPa2] [링크에러 LNK2019] C++에서 C 함수 사용하기 출처: https://ospace.tistory.com/187 [JaPa2] [링크에러 LNK2019] C++에서 C 함수 사용하기 출처: https://ospace.tistory.com/187 [JaPa2] 프로그램 소스들을 보면 자주 보게 되는 extern "C" 대충 C에서 C++ 함수를 사용하기 위해서 적어준다고만 알고 있었지만 윈도우에서 Visual studio 로만 코딩을 하다 보니 이게 그렇게 중요한가 라는 생각을 했었다. VS에서 주로 #include <iostream> 으로 C++ 헤더를 추가하고 printf 와 cout을 섞어 사용하다보니 별 필요성을 못 느꼈다. 물론 라이브러리들도 윈도우용이다보니 C++용이었던듯. 그러다가 리눅스로 작성을 해야하는 것이 생겨서 엄청난 귀차니즘을 맞이한적이 있다. extern "C" 는 C와 C++ 의 컴파일 방식 차이에 의해 생겨나는 미스 매치를 발생하지 않도록 하는데 그 목적이 있다. 이는 C++ 의 오버로딩 등의 기능 때문에 발생한다고 보면 될 듯하다. 자세한건 Flatinum 님의 [C/C++] extern "C"와 네임 맹글링 에서 확인해보자.  조사하다 보니 C에서 C++ 함수(라이브러리)를 사용할때도 사용되지만 C++에서 C 함수를 사용할 때도 써야