5

我对 ifstream 打开功能有疑问。我在netbeans的linux下创建应用程序。我的代码是:

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

问题在路上。当我使用 ~/Desktop/file.txt 并运行应用程序时,文件未打开。但是当我调试应用程序时,一切正常。这个问题的任何提示?谢谢

4

1 回答 1

6

路径名 ~/Desktop/file.txt 将不匹配文件,除非它扩展了波浪号字符,这通常由 shell 在将其传递给程序之前完成。如果您直接调用它,那么您需要使用完整路径名

/home/user/Desktop/file.txt

或相对路径

./Desktop/file.txt

我怀疑调试器正在扩展文件名,以便在将其传递给程序之前对您有所帮助。

于 2012-10-07T14:41:36.463 回答