この質問は多くの時間尋ねられ、私はすべてを参照しましたが、私は少し異なる必要があります。C++はLinuxのソースファイルディレクトリを取得
私はMacBookの使用しています - 私が取得、現在のディレクトリに次の関数を使用する場合、それは別のファイルを与えるC++ 私のプログラムファイルの場所 /Users/Kandarp/ClionProjects/SimulationParser/main.cpp
のために> Clion(IDE)を(私は、ファイルがコンパイルされた実際のパスを考えると、 )
string ExePath() {
char cwd[1024];
if (getcwd(cwd, sizeof(cwd)) != NULL) {
fprintf(stdout, "Current working dir: %s\n", cwd);
return cwd;
} else {
perror("getcwd() error");
return 0;
}}
を実行し、それは次のような答え与えます: /Users/Kandarp/Library/Caches/CLion2016.2/cmake/generated/SimulationParser-50b8dc0e/50b8dc0e/Debug
をしかし、私はどこ私の.cppファイルのRESIパスが必要私は間違っていますか? 助けてください
C++は、世界中の100万台のコンピュータで動作することができる実際のプログラムに使用される言語です。お客様のコンピュータで実行されているプログラムが、開発者のマシン上の.cppファイルのパスを必要とするのはなぜですか? C++ **コンパイラ**はそのパスを必要とし、リンカはオブジェクトファイルのパスを必要とし、その後はそれらのパスはもう必要ありません。 – MSalters
"私の.cppファイルが存在するパスが必要です"。何のために?あなたがオレオグラムを構築し、その実行可能ファイルを別のマシンにコピーするとどうなるでしょうか?開発用コンピュータにはまだパスが必要ですか? –
n.m.あなたは正しい。実行可能ファイルを移動した後、開発者マシンのパスは必要ありません。私はコンセプトを誤って誤解していたので、必要でした。 – kandarp