C库函数-fgets/fputs

学习目标

在前面我使用了fgetc来读取文件的字符,但是每次只能读一个,这也太慢了,因此就有了fgets/fputs这个函数,他可以每次读写取一行。
1、熟悉fgets函数;
2、熟悉fputs函数;


# C库函数-fgets C 库函数 char *fgets(char *str, int n, FILE *stream) 从指定的流 stream 读取一行,并把它存储在 str 所指向的字符串内。当读取 (n-1) 个字符时,或者读取到换行符时,或者到达文件末尾时,它会停止,具体视情况而定。 下面是 fgets() 函数的声明。
#include <stdio.h>
char *fgets(char *s, int size, FILE *stream);
s指向一个字符数组的指针,该数组存储了要读取的字符串
size读取的最大字符数(包括最后的空字符)
stream指向 FILE 对象的指针

如果成功,该函数返回相同的 s 参数。如果到达文件末尾或者没有读取到任何字符,st的内容保持不变,并返回一个空指针。如果发生错误,返回一个空指针。

#include <stdio.h>
int main()
{
    char str[20];
    FILE* fp = fopen("./1.txt","r");
    if(NULL == fp)
    {
        printf("fopen err\n");
        return 1;
    }
    if((fgets(str,20,fp)) != NULL)
    {
        puts(str);
    }
    fclose(fp);
    return 0;
}

C库函数-fputs

C库函数 int fputs(const char *str, FILE *stream) 把字符串写入到指定的流 stream 中,但不包括空字符。
下面是 fputs() 函数的声明:

#include <stdio.h>
int fputs(const char *s, FILE *stream);
s这是一个数组,包含了要写入的以空字符终止的字符序列
stream这是指向 FILE 对象的指针

该函数返回一个非负值,如果发生错误则返回 EOF。
下面的实例演示了 fputs() 函数的用法:

#include <stdio.h>

int main(int argc, char const *argv[])
{
	FILE* fp = fopen("fputs.txt","w+");
	fputs("我是海贼王",fp);
	fputs("不是海王!",fp);
	fclose(fp);
	return 0;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值