크로스 플랫폼 환경에서 실행 디렉터리를 결정하는 방법
프로그래밍 영역에서 프로그램의 실행 디렉터리를 결정하는 것은 중요하지만 플랫폼 및 파일 시스템에 종속적인 작업입니다. C 및 C 개발자는 이러한 종속성을 초월하는 보편적인 솔루션을 찾는 경우가 많습니다.
완전히 플랫폼에 구애받지 않는 방법은 없지만 다음은 Windows 및 C에 대한 맞춤형 솔루션입니다. Linux:
Windows:
#include <windows.h> int main() { char pBuf[256]; size_t len = sizeof(pBuf); int bytes = GetModuleFileName(NULL, pBuf, len); printf("Execution directory: %s", pBuf); return 0; }
Linux:
#include <unistd.h> #include <string.h> int main() { char pBuf[256]; size_t len = sizeof(pBuf); int bytes = MIN(readlink("/proc/self/exe", pBuf, len), len - 1); if (bytes >= 0) pBuf[bytes] = ''; printf("Execution directory: %s", pBuf); return 0; }
위 내용은 크로스 플랫폼 C/C 프로그램에서 실행 디렉터리를 어떻게 얻을 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!