試了好久,終於成功了,就讓我自問自答一下,
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];一行即可輸出不須執行多行