我正在尝试在mac os上使用freopen()运行代码, 但它不会在指定的文件中打印任何输出。 虽然,它在Windows上完美运行。 我正在使用X-Code Editor,输入和输出文件与cpp文件在同一路径中
#include <cstdio>
int main(){
freopen("input.in","r",stdin);
freopen("output.out","w",stdout);
int x;
scanf("%d",&x);
printf("%d\n",x);
return 0;
}
答案 0 :(得分:4)
这是因为您的可执行文件的工作目录不是您拥有.cpp
文件的目录。
您可以指向具有绝对路径的文件,例如。 /Users/omar/Documents/input.in
或从xcode设置更改工作目录(请参阅Change the working directory in Xcode)
答案 1 :(得分:-1)
我亲自尝试更改工作目录,但仍然无法正常工作... 后来我发现,如果您使用Terminal编译c ++文件,根本不会有麻烦!
要使用Terminal编译c ++,请键入以下命令:
cd yourFileDirectory
g++ -o yourFileName yourFileName.cpp
(这将编译您的代码)./yourFileName
(这将成功运行代码!)