C的结构就是以0值结尾(chr(0))或者是.null.的字串,在VFP中也是可以表示的。某些Win32函数调用,需要传入结构类型的数据。如设置系统时间,需求传入日期时间类型的结构,结构体不一样在VFPP中的组装方式也会不一样的。在VFP中利用SetLocalTime函数调用设置系统日期或时间
set date ansi
set century on
set hours to 24
*假定设置系统日期、时间为:1999,9,1
nDate=ctod('1999-09-01')
oldtime=TIME() &&取当前时间
nHo=VAL(subs(oldtime,1,2)) &&取当前时间-时
nSe=VAL(SUBSTR(oldtime, 4, 2)) &&取当前时间-分
nMi=VAL(SUBSTR(oldtime, 7, 2)) &&取当前时间-秒
nMM=VAL(RIGHT(oldtime, 2)) &&取当前时间-毫秒
cBuf=h2str(YEAR(nDate))+h2str(MONTH(nDate))+h2str(DOW(nDate) - 1)+;
h2str(DAY(nDate))+h2str(nHo)+h2str(nSe)+h2str(nMi)+h2str(nMm)
*&&将转换后的二进制字符连接
DECLARE SHORT SetLocalTime IN win32api STRING SystemTime
=SetLocalTime(cBuf) &&设置系统日期
Retu