C语言中的文件操作(三)

C语言中的文件操作(二)-CSDN博客https://blog.csdn.net/Xiaodao12345djs/article/details/142748215?spm=1001.2014.3001.5501

fputs (文本行输入/写)

  • str 指向要输入的字符串
  • stream 指向要存放字符串的文件
cs 复制代码
#include <stdio.h>

int main()
{
	FILE* pf = fopen("test.txt", "w");
	//如果打开失败,返回空指针NULL
	if (pf == NULL)
	{
		perror("fopen");
		return 1;
	}
	//写操作
	fputs("hello world\n", pf);
	fputs("haha\n", pf);

	//关闭文件
	fclose(pf);
	pf = NULL;
	return 0;
}

fgets (字符串输入/写)

cs 复制代码
#include <stdio.h>

int main()
{
	FILE* pf = fopen("test.txt", "r");
	//如果打开失败,返回空指针NULL
	if (pf == NULL)
	{
		perror("fopen");
		return 1;
	}
	//读操作

	char arr[20] = { 0 };
	fgets(arr, 5, pf);
	printf("%s\n", arr);
	fgets(arr, 5, pf);
	printf("%s\n", arr);

	//关闭文件
	fclose(pf);
	pf = NULL;
	return 0;
}

读取到的字符个数是n-1个+一个'\0',比如上方代码,只会读hell+'\0',然后再继续读4个字符+'\0'

当改成读取20个字符,文件里第一行不够20个字符,只读第一行再只读第二行

相关推荐
zyhomepage8 分钟前
科技的成就(六十四)
开发语言·人工智能·科技·算法·内容运营
想做白天梦27 分钟前
多级反馈队列
java·windows·算法
潇雷28 分钟前
算法Day12|226-翻转二叉树;101-对称二叉树;104-二叉树最大深度;111-二叉树最小深度
java·算法·leetcode
爱编程— 的小李1 小时前
开关灯问题(c语言)
c语言·算法·1024程序员节
韭菜盖饭1 小时前
LeetCode每日一题3211---生成不含相邻零的二进制字符串
数据结构·算法·leetcode
极客代码1 小时前
C/C++ 随机数生成方法
c语言·开发语言·c++·算法
甜甜向上呀2 小时前
【数据结构】快速排序(三种实现方式)
算法·排序算法
旋转的油纸伞2 小时前
大模型,多模态大模型面试【LoRA,分类,动静态数据类型,DDPM,ControlNet,IP-Adapter, Stable Diffusion】
算法·leetcode·面试·职场和发展·散列表
XUE_DING_E2 小时前
Educational Codeforces Round 171
算法
Patience to do2 小时前
Android Studio项目(算法计算器)
android·算法·android studio