每日一c 追加方式 写入文件FILE *fp

#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <string.h>


int main()
{
FILE *pf;//定义一个文件指针   大写通常定义的变量都是指针  封装好的_t才是整数类型
char buf[100];//定义一个缓冲区是100的变量


pf = fopen("my","w+");//以读写的方式打开my文件
if(pf == NULL)//如果文件空打开失败
{
perror("open");
exit(1);
}


strcpy(buf,"hello\n");//拷贝



fputs(buf,pf);//将 一行  字符串写入pf

fclose(pf);


bzero(buf,100);
pf = fopen("my","a+");//以追加的方式打开文件

if(pf == NULL)
{
perror("open");
exit(1);
}


strcpy(buf,"world\n");//将world 拷贝到 buf中
fputs(buf,pf);//将world  追加到  pf文件中.


fclose(pf);

}



#include <stdio.h>
#include <string.h>
/*fgets(buf,n,pf)        memset(buf, 0, sizeof(char)*5)*/
int main()
{
	FILE *stream;//定义文件指针
	char buf[20];//定义字符数组

	stream  = fopen("file.txt","r");//打开文件 并返回文件指针  *stream  文件的指针是一个结构体  具体类型。。
	if(stream == NULL)//如果没成功的打开   
	{
		perror("fopen");
		return -1;
	}

	memset(buf, 0, sizeof(char)*5);//清理缓存 清空缓存,
	//memset(buf,0,0);  为什么两次结果一样?
	fgets(buf, sizeof(buf), stream);//从文件中获得一串字符  到  buf中
	printf("buf=%s\n", buf);//打印buf
}


阅读更多
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页