kra*_*626 2 c++ eclipse file eclipse-cdt
我有以下代码(简化)
int main()
{
ifstream myFile("input.txt");
if(myFile.is_open())
cout<<"test";
}
Run Code Online (Sandbox Code Playgroud)
但是myFile.is_open()返回假;
为什么?
我正在使用eclipse并且input.txt文件位于带有.cpp文件的src文件夹中...
谢谢!
默认情况下,每个可执行文件都从项目目录运行.所以对于这样的树:
project
|- src
| |- a.cpp
| |- b.cpp
| |- foo.txt
|
|- Debug
| |- a.exe
|
|- foo2.txt
Run Code Online (Sandbox Code Playgroud)
你应该使用像src/foo.txt或的路径foo2.txt.您的exe位于Debug目录中,但无论如何它都将从您项目的目录运行.通过这种方式,每个构建配置的可执行文件都以相同的方式运行(来自同一个地方).
您可以在"运行配置"下更改工作目录和参数("运行"图标旁边的下拉菜单).切换到"参数"选项卡,取消选中"使用默认值"并设置您想要的默认设置,如果默认设置不合适.