freopen函数通过实现标准I/O重定向功能来访问文件,而fopen函数则通过文件I/O来访问文件。

  freopen函数在算法竞赛中常被使用。在算法竞赛中,参赛者的数据一般需要多次输入,而为避免重复输入,使用重定向。

 freopen 函数说明

 函数名: freopen
功 能: 实现数据重定向到文件中
用 法: FILE *freopen(const char *filename, const char *mode, FILE *stream);
返回值: 成功,则返回文件指针;失败,返回NULL(可以不使用它的返回值)
#include <stdio.h> int main(void)
{
/* redirect standard output to a file */
if (freopen("OUTPUT.FIL", "w", stdout)
== NULL) {
fprintf(stderr, "error redirecting\
stdout\n");
  }
/* this output will go to a file */
printf("This will go into a file."); /* close the standard output stream */
fclose(stdout); return ;
}

  注意:算法竞赛中,filename不要使用绝对路径或者相对路径。

freopen()函数的更多相关文章

  1. [转]C语言文件输入/输出ACM改进版(freopen函数)

    C语言文件输入/输出ACM改进版(freopen函数) 2009年5月27日 10:379,457 浏览数发表评论阅读评论   文章作者:姜南(Slyar) 文章来源:Slyar Home (www. ...

  2. 利用freopen()函数和fc命令简化程序调试

    大家在参加ACM比赛或者参加c/c++实验技能竞赛的时候,如果遇到大量的输入和大量的输出时,调试起来很不方便.一来如果结果不正确的话,需要重复输入大量数据:二来如果大量输出的话,得仔细检查输出结果与正 ...

  3. C语言:freopen函数

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

  4. linux freopen函数

    编程之路刚刚开始,错误难免,希望大家能够指出. 有些需求需要我们不断的输入数据很庞大,如果我们安装常规方法不断地在终端输入值很麻烦(前提是输入的数据是固定的,并不会随程序的运行而改变),这个时候我们就 ...

  5. 文件操作 freopen函数

    转自http://blog.csdn.net/zhuyi2654715/article/details/6963673 当我们求解acm题目时,通常在设计好算法和程序后,要在调试环境(例如VC等)中运 ...

  6. C语言文件输入/输出 ACM改进版(用freopen函数方便检验)

    这次用到的文件打开函数不再是fopen,而是stdio.h中包含的另一个函数freopen FILE * freopen ( const char * filename,const char * mo ...

  7. freopen() 函数的使用

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

  8. freopen函数的使用以及freopen与fopen的区别

    freopen函数的使用:参见这篇博客https://www.cnblogs.com/moonlit/archive/2011/06/12/2078712.html 当我们求解acm题目时,通常在设计 ...

  9. freopen函数总结

    函数原型: freopen(const char * __restrict__ _Filename,const char * __restrict__ _Mode,FILE * __restrict_ ...

随机推荐

  1. Fran&ccedil;ois&nbsp;Hollande’s&amp;…

    EVER since President François Hollande was elected last May, things have not gone right for him. He ...

  2. day4 DOM,BOM

    1.     BOM编程 1.1. BOM编程基础 全称 Browser Object Model,浏览器对象模型. JavaScript是由浏览器中内置的javascript脚本解释器程序来执行ja ...

  3. 解决ubuntu下filezilla登录ftp看不到中文目录和文件的问题 (转载)

    转自:http://blog.csdn.net/duguteng/article/details/7716283 打开filezilla 文件-站点管理器-新站点--字符集--使用自定义的字符集 ,填 ...

  4. sql生成一个唯一标示

    IDNEWID() 插入一条: insert into W_1(id,account,password,uname,telnumber,imei) values(NEWID(),’xiaohong’, ...

  5. mysql给id生成uuid

    mysql中id一般都设为uuid,除了我们在后台用到的uuid利用jpa注解来生成外,其实在mysql中直接也可以生成 直接上代码: 1.mysql中直接使用uuid()函数,可以生成一个随机的uu ...

  6. C++11之lambda表达式应用

    应用 foreach语句中 #include <time.h> #include <algorithm> using namespace std; void func(int ...

  7. poj1191(記憶化搜索)

    題目鏈接:http://poj.org/problem?id=1191 題意:中文題誒- 思路:這道題有幾個關鍵點需要想通,不然會比較難做... 首先,題目給出的標準差公式並不是很好計算,需要給它變下 ...

  8. 洛谷P1031 均分纸牌

    P1031 均分纸牌 题目描述 有 N 堆纸牌,编号分别为 1,2,…, N.每堆上有若干张,但纸牌总数必为 N 的倍数.可以在任一堆上取若干张纸牌,然后移动. 移牌规则为:在编号为 1 堆上取的纸牌 ...

  9. IT兄弟连 JavaWeb教程 AJAX定义以及解决的问题

    Ajax是"Asynchronous JavaScript And XML"的缩写(即:异步的JavaScript和XML),是一种实现无页面刷新获取服务器数据的混合技术,Ajax ...

  10. 4、CreateJS介绍-PreLoadJS

    需要在html5文件中引入的CreateJS库文件是preloadjs-0.4.1.min.js HTML5文件如下: <!DOCTYPE html> <html lang=&quo ...