5

ifstream open 関数に問題があります。Linuxでnetbeansでアプリを作成します。私のコードは次のとおりです。

ifstream file;
file.open(path);
file.is_open()
.
.
.

問題は進行中です。~/Desktop/file.txt を使用してアプリを実行すると、ファイルが開かれません。しかし、アプリをデバッグすると、すべて正常に動作します。この問題のヒントはありますか? ありがとう

4

1 に答える 1

6

チルダ文字が展開されていない限り、パス名 ~/Desktop/file.txt はファイルと一致しません。これは通常、プログラムに渡す前にシェルによって行われます。直接呼び出す場合は、フルパス名のいずれかを使用する必要があります

/home/user/Desktop/file.txt

または相対パス

./Desktop/file.txt

デバッガーは、ファイル名をプログラムに渡す前に役立つようにファイル名を展開していると思われます。

于 2012-10-07T14:41:36.463 に答える