快捷搜索: 王者荣耀 脱发

【C语言学习笔记(七)】C语言重定向输入与输出

一、什么是重定向?

重定向就是重新改变新命令输入与输出的方向。

二、C语言中重定义函数freopen()

freopen()函数声明:

FILE *freopen(const char *path,const char *mode,FILE *stream);

参数说明: path:文件名,用于存储输入与输出的自定义文件名。 mode:文件打开的模式。r-只读,w-只写。 stream:一个文件,通常使用标准流文件。 返回值:成功则返回一个path所指文件的指针;失败返回NULL。 功能:实现重定向,把预定义的标准流文件定向到由path指定的文件中。标准流文件具体指stdin、stdout和stderr。其中stdin是标准输入流,默认为键盘;stdout是标准输出流,默认为屏幕;stderr是标准错误流,一般吧屏幕设为默认。

三、举例

把words文档中的内容写入mywords中。

#include <stdio.h>
int main(void)
{
          
   
	freopen("words.txt", "r", stdin);	//读word.txt文本文件中的内容
	freopen("mywords.txt","w",stdout);	//将键盘输入的内容写入myword.txt文本文件中
	int ch;
	while ((ch = getchar()) != EOF)
		putchar(ch);
	return 0;
}

注意:words.txt文件和mywords.txt文件要和.c文件放在同一个文件下。 运行结果:mywords文件最初是空的,没有任何内容,当运行完上述程序后可以看到words文件中内容传输到了mywords文件夹中。

经验分享 程序员 微信小程序 职场和发展