- 在线时间
- 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的入门程序- L2 q- o. e! T3 T3 ^
% N+ L0 O* g0 q仅需要以下支持文件:0 h1 S- }$ X" Q! s
, K3 y& }9 X; p0 d, y2 e9 |4 z1、头文件lu32.h。
1 [# t$ }. a+ ?7 K2、导入库lu32.lib。
z7 Y# \) Y! v" s3、核心库lu32.dll。 - #include <windows.h>' |1 G+ P7 {5 w& s2 M\\" V4 I
- #include <iostream>
- * ] I: Y) |! {0 }: y2 c0 r
- #include <math.h>
- & I4 q, o+ q\\" A3 l
- #include "lu32.h" //Lu头文件3 J5 z% k U7 A2 B' C9 V0 X) y
- 6 x& \, F5 z D$ N4 g
- #pragma comment( lib, "lu32.lib" )+ ^2 ?0 ?* S9 f8 r0 y/ x, \- @
- 8 |) ]# u+ m( O* S2 |
- using namespace std;6 L3 f& E; V. P# J7 a( z6 [2 H
- 2 ]6 n! e7 o* Y! Z1 M
- void main(void)* ]# m, { M7 B' E* J
- { E8 m% R! ?8 B0 e3 W; u' A
- void *hFor; //表达式句柄5 T) ~+ s. Y% c0 d
- luINT nPara; //存放表达式的自变量个数
- ( g8 N5 S6 U0 z- u1 H0 U! \% W6 X
- LuData *pPara; //存放输入自变量的数组指针& `7 W\\" @7 D7 e) M
- LuData Val; //存放表达式的值
- 8 f4 U/ o) R2 D g: y
- luINT ErrBegin,ErrEnd; //表达式编译出错的初始位置和结束位置& j Y& M: j! y# N
- int ErrCode; //错误代码
- - n [4 @4 n, W8 G2 Y
- wchar_t ForStr[]=L"f(x,y)=x+y"; //字符串表达式8 w/ `( t7 P/ [0 i
- int i;
- % t0 S8 H: u! q$ M; `( _
- . |& C! N* M, b' b: r% a
- if(!InitLu()) return; //初始化Lu7 [4 I- \! b% w. L: C& q' e) |
- 9 p! S8 m U0 F* w+ Z
- ErrCode=LuCom(ForStr,0,0,0,hFor,nPara,pPara,ErrBegin,ErrEnd); //编译表达式8 M; s G1 g, `7 X2 u+ {\\" }
- if(ErrCode) w1 N( o/ L8 C( U4 {0 m
- {
- 8 b\\" K( O\\" t2 T& {: c: Q
- cout<<"表达式有错误!错误代码:"<<ErrCode<<endl;
- h; z* {( z. q9 J& f
- }6 m! }\\" j7 c- z! z\\" l9 |
- else/ E8 d4 i\\" L- y* _: M
- {
- ( B9 c6 x8 v1 v5 K
- for(i=0;i<=nPara;i++) //表达式自变量赋值,均赋值为1
- 7 e) A% ~- Z' `0 n6 J* w
- {* J8 z- }6 g3 k
- pPara[i].BType=luStaData_int64; pPara[i].VType=luStaData_int64; pPara[i].x=1;/ g3 b5 {# |1 L2 g) p
- }
- 0 a. U- B9 R& S' k- _6 b7 i+ O
- Val=LuCal(hFor,pPara); //计算表达式的值- |) n' ~: c: L, V6 V
- cout<<Val.x<<endl;5 w# ]. q' C& r8 V
- }# s5 E9 m4 y5 P* L, M\\" y# }% V
- FreeLu(); //释放Lu
- ( L( d( C9 B8 i; q# `8 y: G! e/ t
- }
运行结果:3 @) j9 T: h9 R' b" Q
0 F4 N6 u; y. h, Z; M' X ^. ~7 b. {; O2
[7 [. |. \& [$ R8 p9 J3 {( t7 M# `请按任意键继续. . .& b# W! | r$ T
|
zan
|