首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在Xcode 4中重定向I/O

在Xcode 4中重定向I/O
EN

Stack Overflow用户
提问于 2011-03-31 01:55:56
回答 1查看 3.7K关注 0票数 19

我刚刚安装了Xcode4,我正在尝试将输入从一个文件重定向到我的C++程序。我试着在我的运行方案的“参数”部分使用通常的"< infile.txt“,但不起作用。我能够很好地重定向Xcode3中的输入和输出(通过编辑可执行文件的参数)。在新版本中如何做到这一点有什么建议吗?

谢谢!

萨默尔

EN

回答 1

Stack Overflow用户

发布于 2011-05-25 04:06:58

我测试了各种类型的参数,发现Xcode的参数似乎有一个bug (最后一次测试:Xcode8)。

但有一种替代方案可以模拟类似的效果。您必须使用环境变量。

添加一个带有要重定向的文件名的环境变量:

然后,在您的代码中,您必须将此文件“重定向”到标准输入(cin):

代码语言:javascript
复制
#include <iostream>
#include <string>
#include <fstream>

using namespace std;

int main (int argc, const char * argv[])
{
    ifstream arq(getenv("MYARQ"));
    cin.rdbuf(arq.rdbuf());

    string value;
    cin >> value;
    cout << value;

    return 0;
}

就这样..。只有两行代码

代码语言:javascript
复制
ifstream arq(getenv("MYARQ"));
cin.rdbuf(arq.rdbuf());

这不是最好的解决方案,但是虽然xcode有这个问题,但这是唯一的解决方案!

票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5490175

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档