小甲鱼 发表于 2016-5-30 15:07:27

fgets -- 从指定文件中读取字符串

fgets 函数文档

函数概要:

fgets 函数用于从指定文件中读取字符串。

fgets 函数最多可以读取 size - 1 个字符,因为结尾处会自动添加一个字符串结束符 '\0'。当读取到换行符('\n')或文件结束符(EOF)时,表示结束读取('\n' 会被作为一个合法的字符读取)。


函数原型:

#include <stdio.h>
...
char *fgets(char *s, int size, FILE *stream);

参数解析:


参数 含义
s 字符型指针,指向用于存放读取字符串的位置
size 指定读取的字符数(包括最后自动添加的 '\0')
stream 该参数是一个 FILE 对象的指针,指定一个待操作的数据流


返回值:

1. 如果函数调用成功,返回 s 参数指向的地址。

2. 如果在读取字符的过程中遇到 EOF,则 eof 指示器被设置;如果还没读入任何字符就遇到这种 EOF,则 s 参数指向的位置保持原来的内容,函数返回 NULL。

3. 如果在读取的过程中发生错误,则 error 指示器被设置,函数返回 NULL,但 s 参数指向的内容可能被改变。


演示:

#include <stdio.h>

#define MAX 1024

int main()
{
      char str;

      printf("请输入一个字符串:");
      fgets(str, MAX, stdin);

      printf("您输入的内容是:%s", str);

      return 0;
}


版权归鱼C工作室(www.fishc.com)所有,转载请注明来源!


mhp0114 发表于 2017-2-15 21:31:23

get it

黑框眼镜和卷毛 发表于 2017-4-4 08:56:00

{:10_254:}

啊哈哈君233 发表于 2017-9-26 19:29:41

为什么我看完一脸懵。。。

Sj中国智造 发表于 2017-10-30 18:43:21

stream不懂

ych 发表于 2017-12-11 13:17:55

{:10_266:}

butters33 发表于 2018-3-12 21:24:02

{:5_92:}

我欲封天 发表于 2018-3-22 23:30:16

{:10_266:}

798236606 发表于 2018-7-4 13:07:48

{:10_256:}

DadingVIP 发表于 2018-7-4 13:26:46

stdin就是标准输入流,从键盘输入

巴达萌小天使 发表于 2019-1-8 21:20:13

{:10_258:}

带你开飞机 发表于 2019-2-10 18:03:32

{:10_266:}

HUIKER 发表于 2019-3-15 18:12:29

{:10_284:}

Seawolf 发表于 2019-6-19 10:11:02

好东西,支持

DT_Nelson 发表于 2019-7-26 10:51:44

#include <stdio.h>

#define MAX 256

int main(){
        char str, *p = str;
        int count;

        printf("Write something:");
        fgets(p, MAX, stdin);

        while(*p++!='\n'){
                count++;
        }

        printf("You have written %d characters!\n", count);
        return 0;
}

zhi.wang 发表于 2019-8-1 13:44:02

stdin是标准输入,一般指键盘输入到缓冲区里的东西

云荡清愁 发表于 2019-8-16 10:20:50

没怎么看懂

Meng渐 发表于 2019-8-28 21:48:01

{:5_106:}

风行回首 发表于 2019-10-25 15:40:46

多谢评论区的解释!!!

拖雷大师 发表于 2019-11-15 09:29:20

{:10_242:}
页: [1] 2 3 4
查看完整版本: fgets -- 从指定文件中读取字符串