免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 8636 | 回复: 17

SETGT与SETLL是从文件开头开始查找还是从当前位置开始查找? [复制链接]

论坛徽章:
0
发表于 2010-10-31 18:40 |显示全部楼层
本帖最后由 Catal 于 2010-11-02 17:51 编辑

最近工作中突然产生的疑问,SETGT与SETLL是从文件开头开始查找还是从当前位置开始查找整个文件?查文档也没有找到相关的说明。于是来这里请教大家。先谢谢了。

看了大家的回答,先谢谢了。不过希望大家自己看一下我的问题。我并不是问定位是定位到记录上还是什么地方的。还是其它什么问题。有人觉得自己知道答案就把经过几条记录答一下。说下为什么或者出处。还有提醒不仔细看题的人指针也好游标也好都不会魔法,不可能凭空出现在某一点上。不理解的解剖下硬盘或者光驱什么的。

论坛徽章:
0
发表于 2010-10-31 19:39 |显示全部楼层
从你定义的键值的位置开始查找

论坛徽章:
0
发表于 2010-10-31 19:56 |显示全部楼层
从你定义的键值的位置开始查找
insmile 发表于 2010-10-31 19:39



    2楼的意思也就是说是从当前位置开始查找了?这个结论你是怎么证明的?还是文档里有提到?

论坛徽章:
0
发表于 2010-10-31 20:09 |显示全部楼层
用*loval就是从文件头开始  当然你也可以自己定义一个key并且给它赋值  就是从你这个key指向的指针开始找

论坛徽章:
0
发表于 2010-10-31 20:19 |显示全部楼层
我印象中文档中有说明的,
还有图表画出来,表明这个操作码怎么运作的

论坛徽章:
0
发表于 2010-10-31 20:36 |显示全部楼层
大家好像误会我的意思了,我问的是SETGT与SETLL这两个命令是如何定位到记录的。打个比方我运行了SETGT这个语句后指针现在已经定位一条记录上了。我想知道的是指针是从文件开头走到当前的记录上,还是从上一条语句运行时指针的位置走到当前的记录上的?打个比方1-10条记录,运行SETGT前指针在第5条上,运行后指针走到了第9条上那么我想知道,指针是从1走到9还是从5走到9的。希望大家帮下忙。

论坛徽章:
0
发表于 2010-11-01 08:47 |显示全部楼层
大家好像误会我的意思了,我问的是SETGT与SETLL这两个命令是如何定位到记录的。打个比方我运行了SETGT这个语 ...
Catal 发表于 2010-10-31 20:36



    据我了解SETLL,记录指针是在匹配记录与前一条记录之间,通过READ或READP操作指针才指向记录,例如,键值为1至10,用5去SETLL,指针会在4、5之间,READ就指向5,READP就指向4,SETGT用法也基本上一样,用5 SETGT,指针在5、6之间,READ就指向7,READP就指向5。要根据自己的实际情况灵活应用。

论坛徽章:
0
发表于 2010-11-01 18:49 |显示全部楼层
请大家仔细看一下我的问题,虽然我说的术语不标准但是,我觉得我问题的意思说明白了。其实我也没有其它意思。只是想搞明白这个问题而已。
第1次指针从A点走到B点这个没有问题。第2次指针请问是从A点走到B点?还是A点走到C点。也可以说,问题是第2次定位中间经过了几条记录。先谢谢大家了。
1<----A点
2           
3
4
5<----B点 第1次SETGT
6
7
8
9<----C点 第2次SETGT
10

论坛徽章:
0
发表于 2010-11-01 21:40 |显示全部楼层
本帖最后由 insmile 于 2010-11-01 21:42 编辑

setgt,setll并不是使指针移动,read这些才是

像上面说的
我觉得应该是从5->9,如果两次都read的话

而且指针不是经过几条记录
,应该是直接过去了,setgt已经把路指明

论坛徽章:
0
发表于 2010-11-02 06:56 |显示全部楼层
SETLL,SETGT只是定位,你写一个小程式试一下不就知道了.
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP