相対パスを指定すると、fopen()でファイルを開くことができません。 Visual Studio 2010でWindowsマシンでこのコードを実行しています。相対パスでファイルを開くと失敗する
const char* OUTPUT_FILE = "output/PERFORMANCE.txt";
FILE* f = fopen(OUTPUT_FILE, "w");
このように相対パスを指定する方法は間違っていますか?私は "\"区切り記号を使うべきですか?
同じ形式を使用して絶対パスを指定すると正常に動作します。 (例: "C:/output/PERFORMANCE.txt")
これはうまくいくはずです。質問は何に相対的ですか?あなたの作業ディレクトリは何ですか? – Mysticial
'.exe'が実行されているディレクトリは、あなたが期待するものではないかもしれません。その後、あなたの相対的なパスは間違っています。 –
OUTPUT_FILEを "PERFORMANCE.txt"と指定すると、新しいファイルが.exeと同じディレクトリに作成されます。ですから、作業ディレクトリは.exeディレクトリと同じであると思います。 – arjunurs