fgets()函数从文件中读数据

来源:互联网 发布:网络结构拓扑图怎么画 编辑:程序博客网 时间:2024/06/11 19:26

这是c primer plus第11章的内容。第五版中文版p293。

fgets需要三个参数,第一个是读取的数据要存放的指针,第二个是允许读取的最大字节数,第三个是从哪里读取。课本上的例子是从终端输入,此时第三个参数写成stdin。

但是要从文件中读取没有例子,下面是从网上找来改编的,在dev下运行通过:

 

#include <stdio.h>

int main(int argc, char *argv[])
{
    FILE *stream;
    stream = fopen("a.txt", "r");
    char name[81];
    char *ptr;
    ptr = fgets(name, 30, stream);
    printf("%s/n", name);
    getchar();
    return 0;
}

注意fopen的第二个参数必须是r而不能是w,否则从文件读取在终端显示的数据将不正确,a.txt这个文件中的内容将全部被删。这是为啥呢,现在还不知道。

 

原创粉丝点击