C语言文件操作函数freopen详细解析
今天做USACO 用到了文件的操作。 之前做USACO只是格式化的些 写 freopen("xxx.in","r",stdin) 和"freopen("xxx.out","w",stdout)"
百度百科上是这么介绍的:
函数名: freopen
功 能: 替换一个流,或者说重新分配文件指针,实现重定向。如果stream流已经打开,则先关闭该流。如果该流已经定向,则freopen将会清除该定向。此函数一般用于将一个指定的文件打开一个预定义的流:标准输入、标准输出或者标准出错。
用 法: FILE *freopen(const char *filename,const char *type, FILE *stream);
头文件:stdio.h
例1:
#include <stdio.h>
#include <stdlib.h>
int main()
{
if(freopen("file.txt","w",stdout)==NULL)
fprintf(stderr,"error\n");
printf("This is in the file\n"); //这句话会在file.txt中显示。
fclose(stdout); //使用fclose()函数就可以把<A href="http://baike.baidu.com/view/266782.htm" target=_blank>缓冲区</A>内最后剩余的数据输出到磁盘文件中,并释放文件指针和有关的缓冲区。
return 0;
}
例2:
//首先在同路径下创建一个in.txt文本文档写入若干数字
#include <stdio.h>
#include <stdlib.h>
int main()
{
freopen("in.txt","r",stdin); //从in.txt 中读入数据
freopen("out.txt","w",stdout); // 将最后数据写入out.txt中
int a,b;
while(scanf("%d%d",&a,&b)!=EOF) //数据是从in.txt中输入的
printf("%d\n",a+b); //写入out.txt中
fclose(stdin);
fclose(stdout);
return 0;
}
freopen("CON","w",stdout) 表示在控制台窗口上写入数据;
例3:
#include <stdio.h>
#include <stdlib.h>
int main()
{
// FILE *stream;
freopen("file1.txt","w",stdout);
printf("this is in file1.txt"); // 这句话在file1.txt中显示
freopen("CON","w",stdout);
printf("And this is in command.\n"); //这句话在控制台上显示
return 0;
}
例5: 关于fread 可以通过下面的程序,一看就知道什么意思了
#include <stdio.h>
#include <stdlib.h>
int main()
{
FILE *stream
char s[102400]="";
if((stream=freopen("file.txt","r",stdin))==null)
exit(-1);
fread(s,1,1024,stdin); // 读取file.txt中1到1024位,放入s中 ,我是这么理解的
printf("%s\n",s);
return 0;
}
栏 目:C语言
下一篇:冒泡排序的三种实现方法
本文标题:C语言文件操作函数freopen详细解析
本文地址:https://www.xiuzhanwang.com/a1/Cyuyan/3995.html
您可能感兴趣的文章
- 04-02c语言函数调用后清空内存 c语言调用函数删除字符
- 04-02c语言的正则匹配函数 c语言正则表达式函数库
- 04-02func函数+在C语言 func函数在c语言中
- 04-02c语言中对数函数的表达式 c语言中对数怎么表达
- 04-02c语言用函数写分段 用c语言表示分段函数
- 04-02c语言编写函数冒泡排序 c语言冒泡排序法函数
- 04-02c语言没有round函数 round c语言
- 04-02c语言分段函数怎么求 用c语言求分段函数
- 04-02C语言中怎么打出三角函数 c语言中怎么打出三角函数的值
- 04-02c语言调用函数求fibo C语言调用函数求阶乘
阅读排行
本栏相关
- 04-02c语言函数调用后清空内存 c语言调用
- 04-02func函数+在C语言 func函数在c语言中
- 04-02c语言的正则匹配函数 c语言正则表达
- 04-02c语言用函数写分段 用c语言表示分段
- 04-02c语言中对数函数的表达式 c语言中对
- 04-02c语言编写函数冒泡排序 c语言冒泡排
- 04-02c语言没有round函数 round c语言
- 04-02c语言分段函数怎么求 用c语言求分段
- 04-02C语言中怎么打出三角函数 c语言中怎
- 04-02c语言调用函数求fibo C语言调用函数求
随机阅读
- 08-05dedecms(织梦)副栏目数量限制代码修改
- 01-10使用C语言求解扑克牌的顺子及n个骰子
- 04-02jquery与jsp,用jquery
- 01-10C#中split用法实例总结
- 08-05DEDE织梦data目录下的sessions文件夹有什
- 01-11Mac OSX 打开原生自带读写NTFS功能(图文
- 01-11ajax实现页面的局部加载
- 08-05织梦dedecms什么时候用栏目交叉功能?
- 01-10SublimeText编译C开发环境设置
- 01-10delphi制作wav文件的方法