QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 3261|回复: 2
打印 上一主题 下一主题

mathematica c语言混合编程的问题 大神求救

[复制链接]
字体大小: 正常 放大

1

主题

8

听众

8

积分

升级  3.16%

  • TA的每日心情

    2014-2-6 19:56
  • 签到天数: 2 天

    [LV.1]初来乍到

    自我介绍
    啥都没有
    跳转到指定楼层
    1#
    发表于 2014-1-16 17:36 |只看该作者 |倒序浏览
    |招呼Ta 关注Ta
    目的是算出cos(x)5次方的程序,整个程序为,结果却不对,调试了很长时间也没有搞定,向大神求助了
    ' E( R+ }6 l) g5 J! g#include "stdafx.h"' Z# ~/ o9 {3 Z0 R7 p
    # U9 `7 g+ D% V0 D
    #include <stdio.h>
    ! O$ w0 q7 k: T6 P. g#include <stdlib.h>
      e1 e; ~7 G" L8 \7 @! ^' b#include <string.h>
    ( M: {- C8 M) f! \
    " R7 g  |( Z: y+ O3 X* t! b#include "mathlink.h"$ Y' `1 S, \% h4 ?% C( a
    & X: r( r1 S9 e$ |  ?; |! Y
    double f(MLINK lp,double x);
    9 p5 X" v" o( Y4 ~
    # D+ i! t) D" i2 Kint main()+ \, }  N4 Y5 g( m6 I0 p
    {
    ( k& I1 P* G6 G" u$ w0 a$ G! Q        int argc=4;) u! r7 n2 |% U2 `
            char*argv[5] ={"-linkname", "F:\\Program Files\\Wolfram Research\\Mathematica\\8.0", "-linkmode", "launch", "NULL"};//指定连接方式
    3 [4 g0 H; a3 `3 P: j) g5 n0 E9 R8 ~% `        MLEnvironment env;//mathlink的环境变量
    ( z2 n6 b7 j+ ]% ~( w2 Z8 W+ i        MLINK lp;! [# ]: {. X- i
            env=MLInitialize(NULL);//初始化
    " Z. j( ~9 p/ P* E$ ^        if(env==NULL)
    / Z- L9 X9 H. _) j: B& L9 ?        {2 Y4 ^4 K3 Z8 _3 W$ o- H
                    printf("initialization error!\n");3 S, F: G  b/ b$ [. b
                    return 1;: s- f% J/ z: I
            }
      j- T) A( S  j: c+ R8 C        lp=MLOpen(argc, argv);
    # C0 O( N% ~- Y" o: H        if(lp==NULL)1 K- V7 B2 X/ {8 i- z* [7 Q) P- r2 s
            {4 L' S4 T+ H5 e3 \7 G
                    printf("open error!\n");6 i8 j$ B( P& V" v1 V1 F* t
                    return 1;: f% T, B( d2 i  ]' @" Q
            }
    2 C5 _' S6 v# I  @1 |& l        for(int i=1;i<=10;i++)6 n0 o5 k% m" z6 w1 _
                    printf("cos(%d)=  %lf\n",i,f(lp,i));//计算f(1)至f(10)& m9 d8 Q$ }. B/ K, w, |

    ! S% |. y( D5 D/ _& H* I( [        MLClose(lp);
    % E+ D3 w9 Q. z* Z; d        MLDeinitialize(env);
    / G' v# v+ G- ]/ E+ l
    ( ?6 n( j7 Z6 q; O8 q        //printf("Hello World!\n");
    " [3 @" ^5 U8 S  C) O" Q! }+ P) H        return 0;
    0 y& P! W* ?/ j3 q/ {0 X7 H0 y# X}4 L3 S! _: q+ h5 l
    & G) C" E+ m) s2 K# F% p

    6 h& u6 T& t1 O; A/ u$ hdouble f(MLINK lp, double x), k- e" d* R# f4 C4 E( m
    {8 L& M* g. H) Q, f1 u4 `3 I
            double res;
    / X  v1 [& i$ {% e2 _( H9 y, M        int pkt;
    - J! L+ [& g- I: f        static int done=0;
    , T( a7 t1 A, I4 C7 F6 p! e        if(!done)2 S  L* n: L  _+ C
            {- I. E* k: p7 Y  ?: X
                    //char* expression="cos(x)^5";
    # {3 u" Q9 L7 v; X. K5 b  `- K                MLPutFunction(lp,"EvaluatrPacket",1);
    1 ?. ]. o: R$ D( r                MLPutFunction(lp,"ToExpression",1);, t2 ]/ B8 A5 e# m3 I
                    MLPutString(lp,"cos(x)^5");
    ; }0 o; Y, _$ ^- b+ e             MLEndPacket(lp);* j! a/ {- G4 J2 ]
                    while((pkt=MLNextPacket(lp),pkt)&&pkt!=RETURNPKT);
    8 v9 `! z. }* W' ~/ Y                MLNewPacket(lp);0 J# ?7 c$ ], W- P8 p$ q& J
                    done=1;
    / }8 [3 q2 X6 }: [. r        }3 H* e, f1 B' ^' n  W! E' V$ W  v
            MLPutFunction(lp,"EvaluatePacket",1);
    & F& j0 e. o1 y        MLPutFunction(lp,"N",1);0 @1 A& G7 e$ p
            MLPutFunction(lp,"F",1);6 Q: C0 w6 x& o
            MLPutReal(lp,x);
    $ w, |8 _- A! v: X5 \: d7 ]- Y        MLEndPacket(lp);
    ' O8 P) _2 u3 s" ]: s# ^        while((pkt=MLNextPacket(lp))&&pkt!=RETURNPKT);: X* a5 o1 M( w$ Y/ i$ b, K7 O
            MLNewPacket(lp);
    1 d* Q* T4 u, l        MLGetReal(lp, &res);
    5 J- b8 {+ x) ^* S5 |/ i, ]        return res;
    7 j6 t+ M1 L2 t% J( q; Q; O}+ @6 a! C7 |7 l+ j" i* Z
    ( s( T  j7 W$ v/ K
    zan
    转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信

    1

    主题

    8

    听众

    8

    积分

    升级  3.16%

  • TA的每日心情

    2014-2-6 19:56
  • 签到天数: 2 天

    [LV.1]初来乍到

    自我介绍
    啥都没有
    回复

    使用道具 举报

    1

    主题

    8

    听众

    8

    积分

    升级  3.16%

  • TA的每日心情

    2014-2-6 19:56
  • 签到天数: 2 天

    [LV.1]初来乍到

    自我介绍
    啥都没有
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 注册地址

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

    关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

    手机版|Archiver| |繁體中文 手机客户端  

    蒙公网安备 15010502000194号

    Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

    GMT+8, 2026-5-4 01:46 , Processed in 0.557552 second(s), 63 queries .

    回顶部