Heim >Backend-Entwicklung >C++ >Wie kann ich das Ausführungsverzeichnis in einem plattformübergreifenden C/C-Programm erhalten?
So bestimmen Sie das Ausführungsverzeichnis in einer plattformübergreifenden Umgebung
Im Bereich der Programmierung geht es darum, das Ausführungsverzeichnis eines Programms zu bestimmen eine entscheidende, aber dennoch plattform- und dateisystemabhängige Aufgabe. C- und C-Entwickler suchen oft nach einer universellen Lösung, die diese Abhängigkeiten überwindet.
Obwohl es möglicherweise keine vollständig plattformunabhängige Methode gibt, finden Sie hier maßgeschneiderte Lösungen für Windows und 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; }
Das obige ist der detaillierte Inhalt vonWie kann ich das Ausführungsverzeichnis in einem plattformübergreifenden C/C-Programm erhalten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!