FoxPro 游标指针操作

查询上一记录
skip -1 *相对定位 指针向上移动一条记录
if bof() *测试当前记录指针是否超出第一条记录
  go top *绝对定位表的第一条记录
endif
thisform.refresh

查询下一记录
skip 1 *相对定位
指针向下移动一条记录
if eof() *测试当前记录指针是否超出最后一条记录
   go bottom *绝对定位表的最后一条记录
endif
thisform.refresh

指针相关函数

BOF()——头函数,测试记录指针是否位于表头(表头时其值为.T.)

EOF()——尾函数,测试记录指针是否位于表尾(表尾时其值为.T.)

RECNO()——记录指针指向的记录的序号(>=1)。

RECC()——表中的记录总数。

说明:刚打开一张表记录指针的情况


表中记录情况


BOF( )


RECNO( )


EOF( )


无记录


.T.



.T.


有记录


.F.



.F.

定位命令


定位
方式


命令


说明


绝对定位


GO TOP|BOTTOM [IN 区号|表别名]

GO [RECORD] N [IN 区号|表别名]


*GO与GOTO可互换

* N值超过记录总数会导致出错


相对定位


SKIP [N] [IN 区号|表别名]


*N省略时默认1

* N过大时,指向表尾

* N 过小时,指向表头


条件定位


LOCATE [范围] FOR <条件>

CONTINUE

*[范围]默认为ALL

 其它的三种情况是:

Record n、Next n、Rest

*指针指向表中符合条件的第一条记录,无匹配记录时指向表尾


命令只是定位,不会显示相应记录,可以与DISPLAY配合进行所定位记录的显示

时间: 2024-11-19 00:23:10

FoxPro 游标指针操作的相关文章

数组与指针(四)——指针操作

// ptr_ops --指针 操作 #include<stdio.h>int main(void){   int urn[5] = {100,200,300,400,500}; int *ptr1,*ptr2,*ptr3; ptr1 = urn;       //把第个地址赋给指针    ptr2 = &urn[2];   //同上 printf("pointer value ,dereferenced pointer ,pointer address:/n");

Day4:T1小技巧(类似于指针操作)T2搜索+小细节

Day4:其中有很多小技巧get T1 一直没有听到过像这样的小技巧的略专业名词,有点类似于指针操作,之前有碰到过很多这样的题目 每次都是以不同的形式出现,但是感觉思想还是有点接近的吧(就比如某天有一题happy,貌似也是这类型的) 这类题目第一眼总是看起来特别的不能写,其实想到了这些技巧之后很简单 感觉这也没有什么规律性或是模板可言 大概的,就是指针思想+平时积累吧 说说这一题吧 在分析正解之前,我们先说一说比较容易想到的骗分方法 设男女人数相同时ans=0,如果下一个是男->ans++,el

C 语言中有趣第指针操作(转)

http://blog.csdn.net/ghevinn/article/details/37651149(反汇编题目需要分析) 4.取出内存区域的值 在取某内存地址开始的一个区域的值的时候,取出的值取决于用来取值的类型,譬如int为4个byte,char为1个byte,程序如: void main(){ int a[2] = {261,0}; int *pi = a; char *p = (char*)pi; cout << *(int *)p++ << endl;  //取出p

C#之指针操作

之前听人说C#没有指针,因为不安全,百度了一下是这么说的: 现在因为工作需要操作硬件看门狗,知道原来C#也是可以操作指针的. 程序环境:.NET MicroFramework 开发工具:VisualStudio 2013开发语言:C#通信工具:新生命神码工具 程序功能:我们的开发硬件在特殊外围情况下可能会出新死机现象.解决方法是通过看门狗程序发现死机,然后C#让MCU指针复位.让MCU重启. C#操作单片机指针程序操作如下: 代码: using System; using Microsoft.S

C#中对指针操作报错解决方法

(C#中实际不存在指针,这里是仿C语言中指针操作进行说明) 1.错误1      “指针和固定大小缓冲区只能在不安全的上下文中使用” 解决方法:在方法前加上unsafe关键字 2.错误2 “不安全代码只会在使用 /unsafe 编译的情况下出现” 解决方法:右键选中资源管理器中项目文件--属性--生成--勾选"允许不安全代码复选框"! 事例代码,取变量a的内存地址并输出: using System; using System.Collections.Generic; using Sys

程序猿之---C语言细节27(函数无参数时细节、函数默认返回int型证明、return默认还回值、void指针++操作)

主要内容:函数无参数时细节.函数默认返回int型证明.return默认还回值.void指针++操作 一.函数无参数时细节 函数无参数时应该加上void 在c语言中一个函数 void f(); 在使用时传递参数f(2);没有报错,而在c++中则会报错 最好加上void来明确函数是无参数的 二.函数默认返回类型为int型 见下面程序 三.return默认返回1 细节:return不可返回执行栈内存中的指针,因为该内存在函数体结束时自动销毁 四.void 指针++操作 void *p; p++; //

【C++ Primer每日一刷之七】指针操作

4.2.3 指针操作 指针提供间接操纵其所指对象的功能.与对迭代器进行解引用操作一样,对指针进行解引用可访问它所指的对象,* 操作符(解引用操作符)将获取指针所指的对象: string s("hello world"); string *sp = &s; // sp holds theaddress of s cout <<*sp; // prints hello world 对 sp 进行解引用将获得 s 的值,然后用输出操作符输出该值,于是最后一条语句输出了 s

C#指针操作Marshal实例

static void Main(string[] args) { byte[] a = new byte[]{0,0,0,0}; byte[] b = new byte[] {1,2,3,4}; IntPtr pt = Marshal.AllocHGlobal(a.Length); //从source数组的startIndex下标开始复制length个对象到ptr; Marshal.Copy(b,0,pt+0,b.Length); //从ptr复制length个对象到目标数组的,从目标数组的s

文件指针操作

1. getFilePointer方法 RandomAccessFile的读写操作都是基于指针的,也就是说总是在指针当前所指向的位置进行读写操作.RandomAccessFile提供了一个可以获取当前指针位置的方法:long getFilePointer()RandomAccessFile在创建时默认指向文件开始(第一个字节),通过getFilePointer方法获取指针位置时值是"0".例如: RandomAccessFile raf = new RandomAccessFile(f