Maison > développement back-end > C++ > Comment puis-je obtenir le répertoire d'exécution dans un programme C/C multiplateforme ?

Comment puis-je obtenir le répertoire d'exécution dans un programme C/C multiplateforme ?

DDD
Libérer: 2024-12-21 02:48:12
original
793 Les gens l'ont consulté

How Can I Get the Execution Directory in a Cross-Platform C/C   Program?

Comment déterminer le répertoire d'exécution dans un environnement multiplateforme

Dans le domaine de la programmation, déterminer le répertoire d'exécution d'un programme est une tâche cruciale mais dépendante de la plate-forme et du système de fichiers. Les développeurs C et C recherchent souvent une solution universelle qui transcende ces dépendances.

Bien qu'il n'existe pas de méthode totalement indépendante de la plate-forme, voici des solutions sur mesure pour Windows et 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;
}
Copier après la connexion

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;
}
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal