• C库函数-fgets()


    函数声明:char *fgets(char *str,int n,FILE *stream)

    函数介绍:从指定的stream流中读取一行,并把它存储在str所指向的字符串中。当读取到(n-1)个字符时,获取读取到换行符时,或者到达文件末尾时,他会停止。具体视情况而定。

    函数参数:

    l  str –- 这是一个指向字符数组的指针,该数组存储了要读取的字符串。

    l  n – 这是读取的最大的字符数(包括最后面的空字符),通常是使用str传递的数组长度。

    l  stream – 这是指向FILE对象的指针,该FILE对象标识了要从中读取的字符串。

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

    实例:

    /*
    fgets.c
    */
    int main()
    {
        FILE *fp;
        char str[60];
        
        fp = fopen("file.txt","r");
        if(NULL == fp)
        {
            perror("open the file error");
            return 0;
        }
        while(NULL != fgets(str,60,fp))
        {
            puts(str);
        }
        fclose(fp);
        return 0;
    }    
    /*
    file.txt
    */
    this is first line
    this is second line
    
    this is three line

    输出结果:

    exbot@ubuntu:~/wangqinghe/Transducer/20190712/01$ ./fgets

    this is first line

    this is second line

    this is three line

    exbot@ubuntu:~/wangqinghe/Transducer/20190712/01$ gedit fgets.c file.txt

    puts(str);//自带“ ”

    改为:printf(“%s”,str);

    运行结果:

    exbot@ubuntu:~/wangqinghe/Transducer/20190712/01$ ./fgets

    this is first line

    this is second line

    this is three line

  • 相关阅读:
    OleDbCommand 的用法
    递归求阶乘
    C#重写窗体的方法
    HDU 5229 ZCC loves strings 博弈
    HDU 5228 ZCC loves straight flush 暴力
    POJ 1330 Nearest Common Ancestors LCA
    HDU 5234 Happy birthday 01背包
    HDU 5233 Gunner II 离散化
    fast-IO
    HDU 5265 pog loves szh II 二分
  • 原文地址:https://www.cnblogs.com/wanghao-boke/p/11176790.html
Copyright © 2020-2023  润新知