hepu 发表于 2013-4-26 12:30:27

PRG2FLL工具

自动把prg代码转换为fll库函数。
1、简单加密prg源代码。
2、利用c++提高数据处理速度。
转换工具支持if,do while,do case,for等命令自动转为c++语句。
====================================================================
下面举例说明。
*转换前demo1.prg程序。
n1=5
sele 0
USE ma1
ZAP
APPEND FROM kx1
REPLACEALL key_id WITH RECNO()
re1=recc()
COPY TO ARRAY CCBBB
ZAP
s1=0.00
FOR i=1 TO re1
    IF i<n1
      s1=s1+ccbbb
    ELSE
      s1=s1+ccbbb
      ccbbb=s1/n1
      s1=s1-ccbbb
    ENDIF
NEXT
APPEND FROM ARRAY CCBBB
brow
USE
RETURN
//=======================================================
*转换后的程序
SET LIBRARY TOcx1.flladdi
=_chengxu1()
RELEASE LIBRARY cx1.fll
//========================================================
自动生成的fll程序。
#include "pro_ext.h"
#include "myfll.h"
extern "C" {
#include "global.h"
}
//=======================
//在这里增加程序处理函数
void FAR chengxu1(ParamBlk FAR *parm)
{
_Execute("n1=5 ");
_Execute("sele 0 ");
_Execute("USE ma1 ");
_Execute("ZAP ");
_Execute("APPEND FROM kx1 ");
_Execute("REPLACEALL key_id WITH RECNO() ");
_Execute("re1=recc() ");
_Execute("COPY TO ARRAY CCBBB ");
_Execute("ZAP ");
_Execute("s1=0.00 ");
_Execute("i=1");
int i=0;
for (i=TJPDI("1") ;i<=TJPDI("re1");i++)
{
varii("i",i);
if (TJPD("i<n1 "))
{
_Execute("s1=s1+ccbbb ");
}
else
{
_Execute("s1=s1+ccbbb ");
_Execute("ccbbb=s1/n1 ");
_Execute("s1=s1-ccbbb ");
}
i=vari("i");
}
_Execute("APPEND FROM ARRAY CCBBB ");
_Execute("brow ");
_Execute("USE ");
_Execute("RETURN ");
}
//=========================
// the FoxInfo structure registers the function
FoxInfo myFoxInfo[] = {
//--------------------------
{"testtest",(FPFI) chengxu0,0,""},
//在这里增加程序处理接口
{"_chengxu1",(FPFI) chengxu1,0,""},
};
extern "C" {
FoxTable _FoxTable =
{
(FoxTable *) 0, sizeof(myFoxInfo)/sizeof(FoxInfo), myFoxInfo
};
}


//=============================================
自己可以转为纯c++
***自动生成C++代码
int i=0;
for (i=TJPDI("1") ;i<=TJPDI("re1");i++)
{
varii("i",i);
if (TJPD("i<n1 "))
{
_Execute("s1=s1+ccbbb ");
}
else
{
_Execute("s1=s1+ccbbb ");
_Execute("ccbbb=s1/n1 ");
_Execute("s1=s1-ccbbb ");
}
i=vari("i");
}

**改为纯c++代码
double s1=0.00,x;
int re1=vari("re1");
int i=1;
int n1=vari("n1");

s1=0.0;
for (i=1;i<=re1;i++)
{
    if (i<n1)
      s1=s1+varaf("ccbbb",2,i,7);
    else
    {
      s1=s1+varaf("ccbbb",2,i,7);
      x=varaff("ccbbb",2,i,8,s1/n1);
      s1=s1-varaf("ccbbb",2,i+1-n1,7);
    }
}


用纯c++代码,成倍提高数据处理速度。
工具包含的自动转换和接口。
可以自动编译,自动连接。

转换工具卖100元,赚个辛苦费。
联系QQ:2775205

马大哈 发表于 2013-5-1 12:43:54

写语法转换确实累,支持个.
页: [1]
查看完整版本: PRG2FLL工具