- 在线时间
- 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的入门程序
6 V- s' [( Q: @4 n
$ o- }+ t7 B d仅需要以下支持文件: | X% e2 X" A N+ [2 X
5 g; N: Y$ A- s+ S1、头文件lu32.h。
V( Z# t% B: i! ~9 ^6 Y9 ^0 T! \2、导入库lu32.lib。
" r! i" P# o( T! N2 Z3、核心库lu32.dll。 - #include <windows.h>
- 9 E6 c# N$ M6 }& ^, J
- #include <iostream>
- 9 O+ @3 W\\" L1 y6 z7 @; k) [1 c
- #include <math.h>
- 4 P4 _6 _5 h- w5 \
- #include "lu32.h" //Lu头文件
- & \% Q- y l/ r9 j4 S4 `6 g
- 9 P$ a; B8 G; s, |( S0 J
- #pragma comment( lib, "lu32.lib" )
- ) R3 \! C4 |, i1 H' w
- 4 H) I) u3 A$ J1 |
- using namespace std;
- # U% P1 Y S8 Y8 R
- 9 F, O2 O' S( s
- void main(void)9 q, A8 S! m+ Y( l
- {# Y6 Z- T6 }4 \2 j0 p c/ J, K- R+ d
- void *hFor; //表达式句柄: K4 V; V6 q- q4 @* g# z; W3 X
- luINT nPara; //存放表达式的自变量个数7 ?- \$ B$ l* w9 }
- LuData *pPara; //存放输入自变量的数组指针
- 6 Z, R7 @' B7 W0 f+ u
- LuData Val; //存放表达式的值
- # N) e* r# q1 _4 x5 D1 x
- luINT ErrBegin,ErrEnd; //表达式编译出错的初始位置和结束位置 P; m! y. y% T; X2 p
- int ErrCode; //错误代码
- ! b3 u: ?+ m9 Z& c, t$ x/ C
- wchar_t ForStr[]=L"f(x,y)=x+y"; //字符串表达式
- $ X2 S V5 s. g Y% V
- int i;& P. K, l1 d3 K- e6 z\\" ?9 d9 o
- 1 O3 Z8 a- { `) x% Y
- if(!InitLu()) return; //初始化Lu
- ) A0 \+ J$ U0 ]3 p p6 H% `
- / Y4 z C( ?3 c7 |% ~* X
- ErrCode=LuCom(ForStr,0,0,0,hFor,nPara,pPara,ErrBegin,ErrEnd); //编译表达式
- 4 h! A3 O2 S6 a' S! Q9 X S# E
- if(ErrCode)4 }6 ]/ I! R; g R6 v- b( _' A, F
- {
- * R' z! v _$ L
- cout<<"表达式有错误!错误代码:"<<ErrCode<<endl;7 q; ?+ A9 y! ~2 T1 ~
- }
- ( ^* e) V+ c4 ? F
- else5 u% n D! [ C2 M0 s- N4 S
- {8 t0 p, ^) y; K) t2 D, f
- for(i=0;i<=nPara;i++) //表达式自变量赋值,均赋值为1
- * V; ^5 P) M1 W
- {
- 8 ?0 W; D9 Z4 W
- pPara[i].BType=luStaData_int64; pPara[i].VType=luStaData_int64; pPara[i].x=1;
- ) l+ i- x' ?# M; N0 {7 W
- }6 J# ]+ t$ ?& n: I. q, ?
- Val=LuCal(hFor,pPara); //计算表达式的值* e( H# C/ N; V. K) U
- cout<<Val.x<<endl;
- ; F3 G- T+ _8 }# |$ N3 X
- }! k5 a9 N, F3 }* F) e: g% f
- FreeLu(); //释放Lu
- ' {, m8 m4 Y4 N
- }
运行结果:* Z3 }8 G8 D- z& T# c
( l* |: k) E r: w9 V* q" E, u2
0 Z. i' i/ ]1 y6 ?1 o: B请按任意键继续. . .) y j" @# ?% ]0 K9 l: M& K# r" L
|
zan
|