| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 4012 人关注过本帖
标题:fgets函数执行后文件指针的位置?
只看楼主 加入收藏
xiang__jie
Rank: 1
等 级:新手上路
帖 子:28
专家分:0
注 册:2011-8-31
结帖率:71.43%
收藏
 问题点数:0 回复次数:4 
fgets函数执行后文件指针的位置?
TXT文件内容如下(学生和学号内容以TAB键跳开);
学生    学号
a    5
b    6
c    7
d    9
程序内容如下:
#include<stdio.h>
void main()
{
    FILE *fp;
    char a[12];
    int b;
    char c[10];
    if((fp = fopen("f:\\1.txt","r"))==NULL)
    {
        printf("open fail !\n");
    }
    else
        printf("open success !\n");
    fgets(c,10,fp);
    puts(c);
   fscanf(fp,"%s\t%d",a,&b);
    while(!(feof(fp)))
    {   
    printf("%s\t%d\n",a,b);
    fscanf(fp,"%s\t%d",a,&b);
    }
}
请问:因为TXT题开头一行为中文行,所以本人先用fgets(c,10,fp);把首行弄走,效果是出来了,但有两点没有想通,就是为什么用完此函数后,fscanf(fp,"%s\t%d",a,&b);语句就一定从下一行开始读取了呢?fgets函数执行后文件指针的位置?请高手解答!
搜索更多相关主题的帖子: while success include 
2011-10-21 11:40
laznrbfe
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
帖 子:482
专家分:1599
注 册:2011-5-22
收藏
得分:0 
百度。。。书上也有介绍吧。不懂就问一下老师~
2011-10-21 12:11
embed_xuel
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:58
帖 子:3845
专家分:11385
注 册:2011-9-13
收藏
得分:0 
回复 楼主 xiang__jie
去网上搜一下FILE的定义

总有那身价贱的人给作业贴回复完整的代码
2011-10-21 12:23
waterstar
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:5
帖 子:984
专家分:2810
注 册:2010-2-12
收藏
得分:0 
通常读完就在末尾,也可以自己移动指针,具体到哪就看自己的了。

冰冻三尺,非一日之寒;士别三日,不足刮目相看!
2011-10-22 17:25
embed_xuel
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:58
帖 子:3845
专家分:11385
注 册:2011-9-13
收藏
得分:0 
回复 楼主 xiang__jie
文件指针概念在C语言中用一个指针变量指向一个文件,这个指针称为文件指针。通过文件指针就可对它所指的文件进行各种操作。头文件:fstream.h:文件输入输出流定义定义说明文件指针的一般形式为:FILE *指针变量标识符;其中FILE应为大写,它实际上是由系统定义的一个结构,该结构中含有文件名、文件状态和文件当前位置等信息。在编写源程序时不必关心FILE结构的细节。例如:FILE *fp;表示fp是指向FILE结构的指针变量,通过fp即可找存放某个文件信息的结构变量,然后按结构变量提供的信息找到该文件,实施对文件的操作。习惯上也笼统地把fp称为指向一个文件的指针。

总有那身价贱的人给作业贴回复完整的代码
2011-10-22 18:06
快速回复:fgets函数执行后文件指针的位置?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017516 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved