首页 > 编程知识 正文

c语言fopen函数的用法示例,freopen_s函数怎么用

时间:2023-05-04 12:54:43 阅读:219598 作者:4338

freopen函数简介

freopen是被包含于C标准库头文件stdio.h中的一个函数,用于重定向输入输出流。该函数可以在不改变代码原貌的情况下改变输入输出环境,但使用时应当保证流是可靠的。

freopen函数说明

函数名:freopen
函数,以指定模式重新指定到另一个文件。模式用于指定新文件的访问方式。
头文件:stdio.h
C89函数声明:
*FILE freopen( const char filename, const char mode, FILE stream );
C99函数声明:
FILE freopen(const char * restrict filename, const char * restrict mode, FILE * restrict stream);
形参说明:
filename:需要重定向到的文件名或文件路径。
mode:代表文件访问权限的字符串。例如,"r"表示“只读访问”、"w"表示“只写访问”、"a"表示“追加写入”。
stream:需要被重定向的文件流。
返回值:如果成功,则返回该指向该输出流的文件指针,否则返回为NULL。

程序实例

附加说明:
stdout(Standardoutput)标准输出
stdin(Standardinput)标准输入
stderr(Standarderror)标准错误

例子1

这个例子实现了从stdout到一个文本文件的重定向。即,把输出到屏幕的文本输出到一个文本文件中。

#include "stdafx.h"#include<stdio.h>int _tmain(int argc, _TCHAR* argv[]){if(freopen("D:\output.txt","w",stdout)==NULL)fprintf(stderr,"error redirecting stdoutn");for(int i=0;i<10;i++)printf("%3d",i);printf("n");fclose(stdout);return 0;}

运行结果:
十个数输出到了D盘根目录下文本文件output.txt中。

例子2

从文件in.txt中读入数据,计算加和输出到out.txt中

#include "stdafx.h"#include<stdio.h>int _tmain(int argc, _TCHAR* argv[]){int a,b;freopen("D:\in.txt","r",stdin);freopen("D:\output2.txt","w",stdout);while(scanf("%d%d",&a,&b)!=EOF)printf("%dn",a+b);fclose(stdin);fclose(stdout);return 0;}

运行结果:
计算的和输出到了D盘根目录下文本文件output2.txt中。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。