【C语言】fprintf和fscanf详解

1.fprintf函数

1.1功能

  fprintf是C/C++中的一个格式化库函数,位于头文件<cstdio>;中,其作用是格式化输出到一个流文件中

1.2函数声明

int fprintf (FILE* stream, const char*format, ...)

参数

  • stream-- 这是指向 FILE 对象的指针,该 FILE 对象标识了流。

  • format-- 这是 C 字符串,包含了要被写入到流 stream 中的文本。它可以包含嵌入的 format 标签,format 标签可被随后的附加参数中指定的值替换,并按需求进行格式化。

1.3举例说明

int main()
{
	struct stu
	{
		char name[10];
		int age;
	};
	struct stu s = { 0 };
	FILE* pf = NULL;
	pf = fopen("test.txt", "w");
	if (pf == NULL)
	{
		perror("fopen");
		return 1;
	}
	fprintf(pf, "%s %d", s.name, s.age);
	printf("%s %d", s.name, s.age);
	fclose(pf);
	pf = NULL;
	return 0;
}

运行结果:在文件中打印信息

2.fscanf函数

2.1功能

   其功能为根据数据格式(format),从输入流(stream)中读入数据,存储到argument中,遇到空格和换行时结束。fscanf位于C标准库头文件<stdio.h>中。

2.2函数声明

  int fscanf(FILE *stream, char *format[,argument...]);

  • stream-- 这是指向 FILE 对象的指针,该 FILE 对象标识了流。

  • format-- 这是 C 字符串,包含了以下各项中的一个或多个:空格字符、非空格字符和format 说明符。

2.3举例

int main()
{
	struct stu
	{
		char name[10];
		int age;
	};
	struct stu s = {0 };
	FILE* pf = NULL;
	pf = fopen("test.txt", "r");
	if (pf == NULL)
	{
		perror("fopen");
		return 1;
	}
	fscanf(pf, "%s %d", s.name, &s.age);
	printf("%s %d", s.name, s.age);
	fclose(pf);
	pf = NULL;
	return 0;
}

运行结果:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值