Elektronika - baza wiedzy

Jak uzyskać ścieżkę do "samego siebie"?


Chcąc uzyskać ścieżkę do "samego siebie" należy funkcji main przekazać następujące argumenty: int argc, char *argv[].

Zmienna argc to ilość parametrów przekazanych do programu, natomiast tablica argv przechowuje przekazane parametry. Element o indeksie 0 tablicy argv to zawsze ścieżka naszego programu, która możemy np skopiować do obiektu typu string

#include <cstdlib>
#include <iostream>
#include <string>

using namespace std;

int main(int argc, char *argv[])
{    
    string s = argv[0];
    cout << "argv[0] >> " << s << endl;
    
    return 0;
}

Wynik działania:

 
F:\>c:\Dev-Cpp\Projekt1.exe
argv[0] >> c:\Dev-Cpp\Projekt1.exe