gpt4 book ai didi

指向标准输出的 C++ 文件指针?

转载 作者:IT老高 更新时间:2023-10-28 22:16:26 39 4
gpt4 key购买 nike

我正在编写一个程序,我希望用户能够指定输出是写入文件还是写入标准输出。到目前为止,我的程序一直在使用 printf 命令,所以我希望将命令简单地更改为 fprintf 命令,但是我的编译器对我大喊大叫,因为显然它们不是同一个对象类。

例如:

FILE *fp;
bool print_to_file;
.
.
.
if(print_to_file){
fp = fopen("something.txt", "w");
}
else{
fp = &stdout;
}
fprintf(fp,"%s\t%s\t%s\n",string1 . c_str(), string2 . c_str(), string3 . c_str());

我宁愿坚持使用 fprintf 并找到一个指向标准输出的 FILE 指针,有人知道这是否可能吗?如果答案是否定的,我可以将我的文件作为 fstreams 打开,然后使用 fprintf 吗?

最佳答案

stdout 是一个 FILE*,所以你可以简单地使用:

FILE* fp = stdout;

关于指向标准输出的 C++ 文件指针?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3551125/

39 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com