(C语言) fgetc与fputc函数详解

本文详细介绍了C语言中的fgetc和fputc函数,分别用于从文件流和标准输入流读取字符,以及向文件流和标准输出流写入字符。通过示例展示了如何使用这些函数处理文件操作和控制台输入输出。
摘要由CSDN通过智能技术生成

目录

1 fgetc函数详解

1.1 从文件流中读取数据

1.2 从标准输入流中读取数据

2 fputc函数详解

2.1 向文件流中写入数据

2.2 向标准输出流中写入数据


1 fgetc函数详解

头文件:stdio.h

该函数只有一个参数:stream

作用:从输入流中获得一个字符,适用于所有输入流.

若成功读取则返回读取到的字符,若遇到文件结尾或读取失败则返回EOF

演示:

1.1 从文件流中读取数据

#include <stdio.h>
int main()
{
	//打开文件
	FILE* pf = fopen("date.txt", "r");
	//检查是否成功打开文件
	if (pf == NULL)
	{
		perror("fopen");
		return 1;
	}
	//操作文件
	int a = 0;
	while ((a=fgetc(pf))!= EOF)
	{
		printf("%c", a);
	}
	//关闭文件
	fclose(pf);
	pf = NULL;
	return 0;
}

可见我们成功从date.txt文件中读取到了数据,fgetc读到文件末尾,返回EOF因此,读取结束。

1.2 从标准输入流中读取数据

#include <stdio.h>
int main()
{
	char arr[10] = { 0 };
	int i = 0;
//从标准输入流中输入数据到arr
	for (i = 0; i < 10; i++)
	{
		arr[i] = fgetc(stdin);
	}
//打印出arr
	for (i = 0; i < 10; i++)
	{
		printf("%c", arr[i]);
	}
	return 0;
}

可见fgetc不会跳过空格,会将一个一个的将字符读取过来

2 fputc函数详解

头文件:stdio.h

函数有两个参数:charactor和stream

作用:将charactor写到stream中,适用于所有输出输出

若成功写入则返回写于的值,若写入失败则返回EOF

演示:

2.1 向文件流中写入数据

#include <stdio.h>
int main()
{
	//已写的模式打开文件
		FILE* pf = fopen("date.txt", "w");
	//检查是否成功打开文件
		if (pf == NULL)
		{
			perror("fopen");
			return 1;
		}
	//向文件中写入数据
	char temp = 0;
	for (temp = 'a'; temp <= 'z'; temp++)
	{
		fputc(temp, pf);
	}
	//关闭文件
	fclose(pf);
	pf = NULL;
	return 0;
}

以‘w’的模式打开文件;若没有date.txt文件,会自己创建一个,若有该文件则清空原内容在进行数据的输入。这里我们完成了字符的输入。

2.2 向标准输出流中写入数据

#include <stdio.h>
int main()
{
	char arr[11] = "abcdefghig";
	int i = 0;
	for (i = 0; i < 10; i++)
	{
		fputc(arr[i], stdout);
	}
	return 0;
}

arr中的数据被打印到了标准输出流上。

感谢观看,欢迎在评论区讨论。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值