Как узнать, где находиться файл, который запустил программу. Язык с++
Мне нужно узнать в какой директории находиться *.cpp файл, который запустил программу. Есть ли такая возможность.
Ответы (1 шт):
Автор решения: Вадим Александру
→ Ссылка
Можно таким образом
#include <iostream>
using namespace std;
int main(int argc, char* argv[]) {
string current_dir(argv[0]);
int pos = current_dir.find_last_of("/\\");
cout << "Директория выполняющегося бинарника: " << current_dir.substr(0, pos) << endl;
cout << "Директория текущего .cpp файла: " << __FILE__ << endl;
return 1;
}
UPD: __FILE__ - получается на этапе компиляции и оставляется статичным вне зависимости от того как и откуда запускался бинарник. Т.е либо через консоль, либо через "Браузер"