procedure 命令示例

下面的示例说明了如何调用过程来完成不连续的任务,如在日志文件中做入口。此过程打开日志文件(假设在本示例中存在),在基于参数传递的信息中构造入口,写出入口,并且关闭文件。用类似于程序最顶部的 DO 命令来调用过程。

do makelogentry with "logged in", "jsmith"
procedure makelogentry
 parameters message, username
 pnhandle = fopen("log2.txt",2)     && 假定文件存在
 pnsize = fseek(pnhandle,0,2)           && 移到文件末
 logentry = dtoc(date())+","+time()+","+username+","+message
 =fputs(pnhandle, logentry)
 =fclose(pnhandle)  && 关闭文件
endproc

下面的示例显示了如何调用过程以返回值。

set century on
? longdate(({^1998-02-16}))  && 显示周一,1998年2月16日
procedure longdate
 parameter mdate
 return cdow(mdate) + ", " + mdy(mdate)
endproc