试了好久,终于成功了,就让我自问自答一下,
SetDirectory[NotebookDirectory[]];
(*先找到资料夹*)
word1 = ToString["Double_t Func(Double_t *par){ return "];
word2 = ToString[";}"];
(*需要用到的文字先打上,并定义他在C中的函数名称是Func*)
DeleteFile["test"] (*先把test这个档案删掉,避免有其他东西在里面*)
WriteString["test", word1]; (*word1写入*)
Func // CForm >>> test; (*方程式写入*)
WriteString["test", word2]; (*word2写入*)
在C程式码的最顶端加入
# include "test" //档案test必须和C程式码在同一路径
如此就可以在C中直接使用Func函数
作者:
LPH66 (-6.2598534e+18f)
2015-10-08 18:18:00太慢看到了, 你可以用 StringJoin 在 Mathematica 里先接好StringJoin["a", "b"] 会得到 "ab"; 用 "a"<>"b" 也是同义所以你可以 WriteString["fn",word1<>CForm[Func]<>word2];一行即可输出不须执行多行