問題:
確定程式所在目錄的完整路徑執行程式是許多程式設計場景中的一項基本任務。然而,由於特定於系統的實現,跨各種平台和檔案系統實現這一點可能具有挑戰性。您能否提供一種簡潔有效的方法來實現與平台無關的此操作?
解決方案:
根據作業系統的不同,有不同的方法來擷取此內容information:
#include <windows.h> int main() { char pBuf[256]; size_t len = sizeof(pBuf); int bytes = GetModuleFileName(NULL, pBuf, len); return bytes ? bytes : -1; }
#include <string.h> #include <unistd.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] = ''; return bytes; }
這些方法依賴低階系統函數直接從作業系統取得路徑,確保與平台無關的功能。
以上是如何跨平台取得C/C程式的執行目錄?的詳細內容。更多資訊請關注PHP中文網其他相關文章!