Code runs perfect in g++ but not in Xcode - Cannot find File(代码在 g++ 中运行完美,但在 Xcode 中却不是 - 找不到文件)
问题描述
我创建了一个包含内容的文本文件.它与 cpp 文件位于同一文件夹中.我已经多次确认该文件存在.当我运行 g++ 时,编译并运行它会找到该文件.当我在 Xcode 中运行它时,它不起作用.如果找不到文件.
I have created a text file with content. It is located in the same folder as the cpp files. And I have confirmed several times that the file exists. When I run g++, compile and run it finds the file. When I run it in Xcode, it does not work. If fails to find the file.
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
int main () {
string line;
ifstream myfile ("example.txt");
if (myfile.is_open())
{
while ( myfile.good() )
{
getline (myfile,line);
cout << line << endl;
}
myfile.close();
}
else cout << "Unable to open file";
return 0;
}
推荐答案
您的文件无法打开,因为 XCode 从 IDE 中的默认 build 位置启动,该位置实际上是某个位置的临时目录你的磁盘.如果您想在启动时将工作目录更改为其他内容(例如可以找到文件的位置):
Your file fails to open because XCode launches from the IDE in the default build location, which is actually a temporary directory off somewhere on your disk. If you want change the working directory at launch-time to something else (like the location where your files can be found):
- 选择产品/编辑方案...菜单选项.
- 在左侧列表中选择运行架构.
- 在右窗格的底部 选项 标签应该是工作目录"选项.选中复选框并将自定义工作目录设置为您知道的地方(您的/Users/yourname"主目录是我使用的一个不错的地方).
- 确保从 IDE 执行程序所需的任何当前目录"数据文件都在此目录中.
- Select the Product/Edit Scheme... menu option.
- Select the Run schema in the left list.
- At the bottom Options tab on the right pane should be a "Working Directory" option. Check the checkbox and set the custom working directory to someplace you know (your "/Users/yourname" home directory is a decent place that I use).
- Make sure any "current directory" data files you need for your program execution from the IDE are in this directory.
如果您没有看到,这也是您可以配置同一对话框的命令行参数(在另一个选项卡上)的地方.
And in case you didn't see it, this is also the place where you can configure command-line arguments (on another tab) of the same dialog.
这篇关于代码在 g++ 中运行完美,但在 Xcode 中却不是 - 找不到文件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:代码在 g++ 中运行完美,但在 Xcode 中却不是 - 找
基础教程推荐
- 如何在 C++ 中处理或避免堆栈溢出 2022-01-01
- 如何定义双括号/双迭代器运算符,类似于向量的向量? 2022-01-01
- C++ 程序在执行 std::string 分配时总是崩溃 2022-01-01
- C++ 标准:取消引用 NULL 指针以获取引用? 2021-01-01
- 您如何将 CreateThread 用于属于类成员的函数? 2021-01-01
- C++,'if' 表达式中的变量声明 2021-01-01
- 调用std::Package_TASK::Get_Future()时可能出现争用情况 2022-12-17
- 设计字符串本地化的最佳方法 2022-01-01
- 什么是T&&(双与号)在 C++11 中是什么意思? 2022-11-04
- 运算符重载的基本规则和习语是什么? 2022-10-31