标题:如何写一个寻找文件某行的函数?
取消只看楼主
soulmate1023
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:6
帖 子:256
专家分:831
注 册:2014-9-23
结帖率:91.67%
已结贴  问题点数:20 回复次数:5 
如何写一个寻找文件某行的函数?
如题,我想写一个函数:char *search_line(FILE *fp,int line);
寻找一个字符文件fp的第line行,然后返回该行的首地址,但是,我看书上说,文件在内存中存储时是不存换行副的,
那如果不能拿换行副来做判断,如何知道读到下一行了?
*************还有个问题,我在这个自己写的函数中直接使用rewind()来让文件读写标志移到文件头,直接用ftell来获取文件读写标志
的当前位置,但DEV编译器说有错(前提是我在预处理文件中写了#include<stdlib.h>)
搜索更多相关主题的帖子: include 编译器 如何 
2014-10-10 10:19
soulmate1023
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:6
帖 子:256
专家分:831
注 册:2014-9-23
得分:0 
回复 5 楼 stop1204
有所收获,感谢
2014-10-12 10:16
soulmate1023
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:6
帖 子:256
专家分:831
注 册:2014-9-23
得分:0 
回复 2 楼 TonyDeng
为什么函数原型设计错了?你是说在文件流里不能这样吗?可是想起来没什么问题呀。
大神,求解。。。
2014-10-12 10:19
soulmate1023
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:6
帖 子:256
专家分:831
注 册:2014-9-23
得分:0 
回复 11 楼 TonyDeng
首先感谢版主回复,
其次,我现在都乱了,那如果要编一个文件编译器小程序,实现对文件的行插入,行替换,行删除,那不是要定位到行才可以,既然这样,那行定位的函数如何写?
2014-10-12 12:25
soulmate1023
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:6
帖 子:256
专家分:831
注 册:2014-9-23
得分:0 
回复 13 楼 TonyDeng
好的,我想想。
2014-10-12 12:35
soulmate1023
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:6
帖 子:256
专家分:831
注 册:2014-9-23
得分:0 
回复 15 楼 TonyDeng
刚你说了后,就顺你的思路一直在编,终于成功了,感谢感谢,我想你说一行一个节点就是每个结点放行首地址,让后链表链接起来,如果直接在外存上做,那只能知道偏移地址不是就会访问到不确定的内存地址?
其实我的编译器程序用的是数组来做,然后判断换行符,属于笨办法,但总觉得这种方法做的题多了,最熟悉。
2014-10-12 17:58



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-437054-1-1.html




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

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