C/C++中的freopen()函数使用详解

C/C++中的freopen()函数使用详解C C 重定向标准输入输出的库函数 所谓重定向输出 就是可以把原本只是输出在控制台的字符 输出到你指定的路径文件中 输入类似 就是从指定的文件中读取 而不是读取在控制台中的输入 重定向函数可以在任何时候开启 关闭 函数名 freopen 标准声明 FILE freopen constchar path constchar mode FILE stream

C/C++重定向 标准输入输出 的库函数。

所谓重定向输出,就是可以把原本只是输出在控制台的字符,输出到你指定的路径文件中。(输入类似,就是从指定的文件中读取,而不是读取在控制台中的输入。)重定向函数可以在任何时候开启、关闭。

函数名:freopen

标准声明:FILE *freopen( const char *path, const char *mode, FILE *stream );

所在文件:

参数说明:

path: 文件名,用于存储输入输出的自定义文件名。

mode: 文件打开的模式。和fopen中的模式(如r-只读, w-写)相同。

stream: 一个文件,通常使用标准流文件。

返回值:成功,则返回一个path所指定文件的指针;失败,返回NULL。

功能:实现重定向,把预定义的标准流文件定向到由path指定的文件中。标准流文件具体是指stdin、stdout和stderr。其中stdin是标准输入流,默认为键盘;stdout是标准输出流,默认为屏幕;stderr是标准错误流,一般把屏幕设为默认。

注意freopen()的地址格式!必须是双斜杠\\ !!!!

#include 
  
    #include 
   
     using namespace std; //0x3f3f3f3f为无穷大常量(一个10^9数量级的数) #define INF 0x3f3f3f3f void swap(int &x,int &y){ //交换数值 x^=y; y^=x; x^=y; } int main() { //注意freopen()的地址格式!必须是双斜杠\\ !!!! freopen("D:\\CZHSoftware\\C语言\\Dev编程h\\freopen\\freopenTest.txt","w",stdout); freopen("D:\\CZHSoftware\\C语言\\Dev编程h\\freopen\\freopenTest1.txt","r",stdin); int a=0,b=0; cout<<"hello world"< 
    
      >a>>b; swap(a,b); cout<<"a="< 
      

类似的,freopen("D:\\CZHSoftware\\C语言\\Dev编程h\\freopen\\freopenTest.txt","w",stdout)的作用就是把stdout重定向到D:\\CZHSoftware\\C语言\\Dev编程h\\freopen\\freopenTest.txt文件中,这样输出结果就可以通过打开freopenTest.txt文件查看。

上面程序运行意思:

比如freopenTest1.txt中数据是2 3,

则freopenTest.txt中写入了




版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/204404.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月19日 下午8:22
下一篇 2026年3月19日 下午8:22


相关推荐

  • Java数据库JDBC——prepareStatement的用法和解释

    Java数据库JDBC——prepareStatement的用法和解释转自:http://blog.csdn.net/QH_JAVA/article/details/48245945一、prepareStatement的用法和解释1.PreparedStatement是预编译的,对于批量处理可以大大提高效率.也叫JDBC存储过程2.使用Statement对象。在对数据库只执行一次性存取的时侯,用Statement对象进行处理。Prepared…

    2022年4月28日
    61
  • Redis 数据类型

    1.String(字符串)string是redis最基本的类型,一个key对应一个valuestring类型是二进制安全的,即它可以包含任何数据setkeyvalue创建一个键值对getkey得到key对应的值示例:redis127.0.0.1:6379&gt;setnamezhangsanOKredis127….

    2022年4月9日
    39
  • mysql coalesce函数_mysql coalesce函数

    mysql coalesce函数_mysql coalesce函数COALESCE 函数从值列表中返回第一个非 NULL 的值 当遇到 NULL 值时将其替换为 0 coalesce str1 str2 e g 需要在表中查出所有比 WARD 提成 COMM 低的员工 提成为 NULL 的员工也包括在内 个人意见 如果数据库提成字段默认值不是为 0 值的话肯定是开发那个的错 selectename commfromempw

    2026年3月18日
    2
  • 昆仑万维天工超级智能体APP上线后爆火!全球首款Office智能体APP,开启AI办公新时代

    昆仑万维天工超级智能体APP上线后爆火!全球首款Office智能体APP,开启AI办公新时代

    2026年3月16日
    3
  • EasyAdmin CURD命令大全

    EasyAdmin CURD命令大全常用命令 生成 ea test goods 表的 CURDphpthink ttest goods 生成 ea test goods 表的 CURD 文件冲突时强制覆盖 phpthinkcurd ttest goods f1 删除 ea test goods 表的 CURDphpthink ttest goods d1 生成 ea test goods 表的 CURD 控制器在目录 demo 下的 Goods php 文件 phpthinkcurd t

    2026年3月18日
    2
  • Python中range()函数的用法

    Python中range()函数的用法函数原型:range(start,end,scan):参数含义:start:计数从start开始。默认是从0开始。例如range(5)等价于range(0,5);end:技术到end结束,

    2022年7月5日
    38

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号