c++ 在Xcode 4中重定向I/O

我刚刚安装了Xcode 4,我正在尝试将文件中的输入重定向到我的C程序。我尝试在我的运行方案的“参数”部分中使用通常的“< infile.txt”,但这没有工作。我能够重定向Xcode 3中的输入和输出就好了(通过编辑可执行文件的参数)。关于如何在新版本中做任何建议? 谢谢! 萨

解决方法

我用各种类型的参数测试,看来Xcode有一个参数错误(最后一个测试:Xcode 8)。

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

使用要重定向文件添加环境变量:

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

#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;
}

就是它只有2行代码

ifstream arq(getenv("MYARQ"));
cin.rdbuf(arq.rdbuf());

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

相关文章

在有效期内的苹果开发者账号(类型为个人或者公司账号)。还...
Appuploader官网--IOS ipa上传发布工具,证书制作工具跨平台...
苹果在9月13号凌晨(北京时间)发布 iOS 16,该系统的设备可...
计算机图形学--OpenGL递归实现光线追踪
Xcode 14打出来的包在低版本系统运行时会崩溃,报错信息是Li...