c(2)
-
C 혹은 C++ 에서 실행중인 파일 경로 구하기
Linux 상에서는 process id가 1234가 일 경우 /proc/1234/exe 에 전체 실행 파일명 포함 경로를 알 수 있고, 여기서 실행파일이 위치한 폴더명을 뜯어낸다.bool get_exepath(std::string& ret){ char arg1[20]; char exepath[1024] = {0}; snprintf(arg1,20,"/proc/%d/exe",getpid()); if (readlink(arg1, exepath, 1024) Windows에서는 GetModuleFileNameW() 을 이용 실행 파일명 포함 경로를 알 수 있고, 이를 이용 실행파일이 위치한 폴더명을 알아낼 수 있다. 아래의 예는 이렇게 구한 전체 path에 실행파일이 있는 실행폴더내 "m..
2024.08.27 -
Python과 C 혹은 C++ 연동 사용하기
Python을 사용하다보면 어떠한 목적으로 C혹은 C++ 쪽에서 작성한 코드와 연동하여 사용할 필요가 있다. 이는 성능이슈로 C, C++를 사용하든, 아니면 python 코드의 경우 코드를 완벽하게 숨길 수 없어 숨겨야하는 핵심 코드가 있든... 아무튼 C, C++ 와 Python 간의 연동을 위한 ctypes 라는 모듈이 있는데, 기본적으로 C 로 작성된 코드들을Python script에서 사용할 수 있도록 해준다. 자세히는 아래 url을 참고한다.https://docs.python.org/ko/3/library/ctypes.html 아래는 C/C++ 모듈에서 JPG 파일을 읽은 후 디코딩한 RGB 이미지를 Python으로 전달해서 화면에 표시하기 위해서 PIL 모듈의 Image 객체를 만드는 예제이..
2024.08.27