头文件:stdio.h
FILE *freopen( const char *filename, const char *mode, FILE *stream );
参数说明:
filename:需要重定向到的文件名或文件路径。
mode:代表文件访问权限的字符串。例如,"r"表示“只读访问”、"w"表示“只写访问”、"a"表示“追加写入”。
stream:需要被重定向的文件流。
返回值:如果成功,则返回该指向该输出流的文件指针,否则返回为NULL。
下面举一个例子:假设E盘下面有两个文本文档in.txt和out.txt,其中in.txt中第一行是一个数字n,表示接下有n行字符串,out.txt是一个空文档,现在想要将in.txt中的内容全部复制到out.txt中,当然可以通过fopen,getc,putc等函数实现,但这里使用文件重定向,将in.txt重定向为stdin,将out.txt重定向为stdout,这样stdin和stdout中的函数本来应该是从屏幕上读取和输出数据的,就变成了从in.txt中读取数据,写入到out.txt中了。
程序如下:
#include<iostream>
#include<stdio.h>
using namespace std;
int main()
{const char * in ="E:\\in.txt";const char * out="E:\\out.txt";if(freopen(in,"r",stdin)==NULL){cout<<"in.txt 打开失败"<<endl;return 0;}if(freopen(out,"w",stdout)==NULL){cout<<"out.txt 打开失败"<<endl;return 0;}int n;cin>>n;cin.get();cout<<n;char str[50];while(n){cin.getline(str,8);cout<<str<<endl;n--;}return 0;
}

转载于:https://www.cnblogs.com/bewolf/p/5140285.html

文件重定向函数freopen相关推荐

  1. c语言 freopen txt_C语言文件操作函数freopen详解

    C语言文件操作函数freopen详解 今天做USACO 用到了文件的操作. 之前做USACO只是格式化的.些 写 freopen("xxx.in","r",st ...

  2. c语言 freopen txt_C语言文件操作函数freopen详细解析

    今天做USACO  用到了文件的操作. 之前做USACO只是格式化的些 写  freopen("xxx.in","r",stdin)  和"freop ...

  3. linux c open fopen freopen 文件操作函数

    open是linux下的底层系统调用函数,fopen与freopen c/c++下的标准I/O库函数,带输入/输出缓冲. linxu下的fopen是open的封装函数,fopen最终还是要调用底层的系 ...

  4. freopen重定向函数

    freopen重定向函数   通常在设计好算法和程序后,要在调试环境(例如VC等)中运行程序,输入测试数据,当能得到正确运行结果后,才将程序提交到oj中.但由于调试往往不能一次成功,每次运行时,都要重 ...

  5. C++文件操作之freopen

    作为一个OIer,文件操作是很重要的. 如果没有文件操作或文件操作被注释,等待着你的就是爆零的命运. C和C++的文件操作,一般是用fopen或fstream,但在OI里,我们用freopen,即文件 ...

  6. C语言文件操作函数大全

    unix中一切皆文件,所以文件操作至关重要! clearerr(清除文件流的错误旗标) 相关函数 feof 表头文件 #include<stdio.h> 定义函数 void clearer ...

  7. linux c dup dup2 重定向函数简介

    dup()函数和dup2()函数书上在文件操作那一章,已经讲过了,这周看重定向这块,发现它挺重要,就再看了回,记录下. 1. dup函数 头文件及函数定义: #include <unistd.h ...

  8. C语言文件操作函数大全(看到总结的真的很好,就转载贡献给大家了)

    C语言文件操作函数大全 clearerr(清除文件流的错误旗标) 相关函数 feof 表头文件 #include<stdio.h> 定义函数 void clearerr(FILE * st ...

  9. C语言再学习 -- 常用头文件和函数(转)

    参看:C/C++常用头文件及函数汇总 linux常用头文件如下: POSIX标准定义的头文件 <dirent.h>        目录项 <fcntl.h>         文 ...

最新文章

  1. android学习笔记之十服务(Service)
  2. $(document).ready()和window.onload的区别
  3. 官方数据:5次SDN大会的背后
  4. 计算机二级python用什么书-计算机二级Python考试有什么学习资料?
  5. 浙江树人学院计算机专业好吗,浙江树人学院有哪些专业及什么专业好
  6. Redis整合springboot实现集群模式
  7. HAProxy负载均衡原理及企业级实例部署haproxy集群
  8. 【转】JAVA 调用Web Service的方法
  9. 真正的技术大牛,可能根本不写代码
  10. DHTML3(表格动态创建,删除行/列,表格行排序,行颜色交替高亮显示)
  11. LINUX编译automake
  12. IT十八掌掌第十一天课程总结
  13. 鲍威尔法源程序码matlab,鲍威尔算法matlab程序.doc
  14. android 刷机 3e,华为nova 3e官方出厂固件rom刷机包下载_nova3e完整版升级包
  15. ios11修改微信步数_网页一键就能修改微信步数?这个网站你值得看下
  16. QQ防撤回9.0.2 软件 源码 源文件
  17. 计算机二级office易错知识点,重要!!!计算机二级office易错点汇总
  18. 前端面试问题答案汇总--基础版
  19. 【QT-版本】QT版本选择问题
  20. 使用微信web开发者工具调试微信企业号页面

热门文章

  1. 半监督训练-思想与代码实践
  2. matlab正余弦画心形图案
  3. Ubuntu16.04下面的vs code出现Unable to activate CppCheck analyzer
  4. Python学习笔记——glob模块【文件、路径操作】
  5. 【数学基础】参数估计之贝叶斯估计
  6. 小车手app安卓版下载_古筝大师app下载-古筝大师下载v2.1.2 安卓版
  7. springboot设置UTF-8
  8. 下载文章图片 php,PHP下载文章中的图片+处理文章中的字符
  9. 线程池---多线程学习笔记(三)
  10. Java中return的用法