Ermitteln des laufenden Verzeichnisses des Programms
Um den vollständigen Pfad des Verzeichnisses abzurufen, in dem ein Programm ausgeführt wird, können verschiedene plattformspezifische Methoden verwendet werden beschäftigt sein. Hier sind zwei gängige Ansätze:
Windows:
Windows bietet die Funktion „GetModuleFileName“, die den vollständigen Pfad des ausführenden Programms zurückgibt. Um dies zu nutzen, können Sie einen Zeichenpuffer (char pBuf[256]) deklarieren, um den Pfad und seine Länge zu speichern (size_t len = sizeof(pBuf)). Rufen Sie dann GetModuleFileName auf und übergeben Sie NULL als Modulhandle und die Pufferadresse als zweiten Parameter. Die Funktion gibt die Länge des Pfads in Zeichen zurück.
Linux:
Unter Linux können Sie die Readlink-Funktion verwenden. Es akzeptiert den Pfad /proc/self/exe als Quelle und eine Pufferadresse als Ziel. Der Rückgabewert ist die Anzahl der in den Puffer geschriebenen Bytes, die kleiner als seine Länge (len - 1) sein muss. Denken Sie daran, nach dem Schreiben in den Puffer ein Null-Terminator anzuhängen.
Dieser Ansatz ist nicht plattform- oder dateisystemunabhängig. Es bietet jedoch eine Lösung für bestimmte Plattformen und Dateisysteme und ist daher für verschiedene Szenarien wertvoll.
Das obige ist der detaillierte Inhalt vonWie kann ich das Laufverzeichnis eines Programms unter Windows und Linux ermitteln?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!