提高FOXBASE程序可读性的一种方法
#define BAKSPACE ox08
为了保证其通用性,这些宏定义一般放在头文件中。FOXBASE没有提供专门的命令。如何解决这一问题,使FOXBASE也具有类似的功能。笔者想到了FOXBASE特有的一种文件_内存变量文件(.MEM)。它能够将内存中的变量全部或部分保存,并能够恢复到内存中去。我们可以把各种变量赋值后(亦可称为宏定义)存入到.MEM文件中,以供各类应用程序调用,则可大大提高源程序的可读性。又由于内存变量文件(.MEM)和命令文件(.PRG)无直接关系,故其也具有良好的通用性。此外,FOXBASE还提供了函数INKEY(),它不仅能识别普通字符,亦能识别不可打印字符。两者结合使用,则可使FOXBASE程序可读性与C语言相媲美。下面具体说明用法:
1.建立FOX.MEM文件
ESC=27
DEL=7
END=6
INS=22
CURSOR__R=4
CURSOR__U=5
CURSOR__L=19
CURSOR__D=24
SAVE TO FOX.MEM
2.调用该文件方法:应用程序只需在文件开始部分加入下面一条命令,即可实现调用。
RESTORE FROM FOX.MEM ADDITIVE
3.举例:下面是两段小程序,供分析:
①IN=0
IN=INKEY() &&读输入键
IF IN=CURSOR__U
SKIP -1 &&转上一记录
ELSE
IF IN=CURSOR__D
SKIP &&转下一记录
ENDIF
ENDIF
DO DISP__REC &&转显示文件
②IN=0
IN=INKEY() &&读输入键
IF IN=DEL
DELETE
PACK &&删除记录
ENDIF
IF IN=INS
INSERT BLANK &&加空记录
ENDIF
第一段小程序利用↑↓键移动记录指针,第二段小程序利用DEL,INS键增删记录。内容简单,但功能很强,可读性也非常好。读者可自行开发其功能。
(湖南 肖进)