- 在线时间
- 13 小时
- 最后登录
- 2013-12-8
- 注册时间
- 2010-5-13
- 听众数
- 3
- 收听数
- 0
- 能力
- 0 分
- 体力
- 399 点
- 威望
- 11 点
- 阅读权限
- 30
- 积分
- 282
- 相册
- 0
- 日志
- 0
- 记录
- 0
- 帖子
- 97
- 主题
- 45
- 精华
- 0
- 分享
- 0
- 好友
- 1
升级   91% TA的每日心情 | 难过 2012-8-27 18:22 |
---|
签到天数: 1 天 [LV.1]初来乍到
 |
C/C++调用Lu的入门程序
# Q# U. L% ~+ X) I% [3 c( l8 r0 Q
仅需要以下支持文件:& D, M4 U+ n4 o) X! ^# r' }* ]
1 s. G% N1 @9 r0 Z6 D; Z% |
1、头文件lu32.h。; d- M: w; \2 |
2、导入库lu32.lib。. M# t! A! Q* X, Q! B$ d6 e
3、核心库lu32.dll。 - #include <windows.h>7 R1 d& O. w$ J8 ?4 d/ g
- #include <iostream>' s( a) D; K* L% C5 `1 w4 L
- #include <math.h>5 I& w6 e; X/ _( p
- #include "lu32.h" //Lu头文件
- Z4 `4 g2 V3 T% `) E- m
- $ _$ P+ V3 v5 a$ T/ {+ p0 T L\\" H) I6 x
- #pragma comment( lib, "lu32.lib" ): N0 t/ E [# W# n3 T+ {( b8 J
- 1 z7 m6 t) [3 L5 L, J- I* K
- using namespace std;$ S* O2 r* `1 x0 g9 z
- , M x& n @8 m
- void main(void)
- 1 W# h* N$ a) \) O
- {
- . r- s! p* P- t! j% c! @
- void *hFor; //表达式句柄
- - K7 K! U' ~% X\\" }5 D! i& [
- luINT nPara; //存放表达式的自变量个数. b( Y6 g$ I/ a8 k b; k, H. h
- LuData *pPara; //存放输入自变量的数组指针' y2 q\\" G: d4 k! c+ V
- LuData Val; //存放表达式的值
- z' B5 @1 @% [\\" `- f
- luINT ErrBegin,ErrEnd; //表达式编译出错的初始位置和结束位置3 e7 Q( J ?; `* r; R! o
- int ErrCode; //错误代码
- # {6 |3 V b2 t9 ~
- wchar_t ForStr[]=L"f(x,y)=x+y"; //字符串表达式
- 0 j3 o2 H/ ?% \% l
- int i;5 b6 S% b O# Y7 \
- $ ?5 l& h! d6 Y2 S. K
- if(!InitLu()) return; //初始化Lu. w1 p4 _0 ^ x! Q% U/ w
- 0 q: H9 M% M8 o, X+ P
- ErrCode=LuCom(ForStr,0,0,0,hFor,nPara,pPara,ErrBegin,ErrEnd); //编译表达式
- 0 v: A+ D# B/ z* q( l0 }; d
- if(ErrCode)
- & F2 d, H' h! H- u, y
- {
- + f: }9 Y; C2 R9 A6 y
- cout<<"表达式有错误!错误代码:"<<ErrCode<<endl;
- T# p% P+ I& a, J! `
- }0 E. R f3 V8 i\\" U k& v% ?3 p8 b
- else
- ! N6 M* E& p) I8 `5 o
- {
- ) ^$ F8 X% [; n. D' x
- for(i=0;i<=nPara;i++) //表达式自变量赋值,均赋值为1 Q1 a) c& G K/ U9 _/ s+ ?* {- j
- {; i* m7 S* A) T5 i5 K% E6 ^
- pPara[i].BType=luStaData_int64; pPara[i].VType=luStaData_int64; pPara[i].x=1;) H2 [5 H: Z. _( ?& d- D( d
- }. t2 }2 o- d: N; }' o! j
- Val=LuCal(hFor,pPara); //计算表达式的值! \, ?8 N3 k' R1 T
- cout<<Val.x<<endl;
- ) b/ }+ Z6 M$ ~9 x( b) s& U
- }
- * m8 m3 y0 c! U, f9 u) ]3 y
- FreeLu(); //释放Lu
- : Q' O+ m. o\\" |' G. Z. W
- }
运行结果:- f1 E2 `& ^, Y; Q2 K
! @- a* K* _# A4 w7 N
2
' M, W" D4 _ Y) j2 [请按任意键继续. . .
6 p* K, c$ j- g( E4 L$ g |
zan
|