這在C語言中如何實現(xiàn)?舉例吧,下面的cre_fun函數(shù)該怎么實現(xiàn)?其中"return 100;"是動態(tài)創(chuàng)建的函數(shù)中的語句void cre_fun(void* fn,char* fn_str){}void main(){int fn();cre_fun(fn,"return 100;");printf("%d\n",fn());}void cre_fun(void* fn,char* fn_str){}中fn指向動態(tài)創(chuàng)建的函數(shù),fn_str為動態(tài)創(chuàng)建的函數(shù)中的語句
2 回答

倚天杖
TA貢獻1828條經(jīng)驗 獲得超3個贊
C語言可以通過宏,在你需要的位置宏展開出一個新的函數(shù)。
例如:
#define XXX(funcname) \
int funcname (int arg1, int arg2) \
{ return arg1 + arg2; }
但這也是編譯期就決定好了的,也不能實現(xiàn)運行期動態(tài)創(chuàng)建。

不負相思意
TA貢獻1777條經(jīng)驗 獲得超10個贊
不好意思,我對js不太熟悉,但是大概理解你的意思,有個問題,你覺得js是萬能的嗎?也就是說難道你在js里面就能用類似cre_fun(void* fn,char* fn_str)的語法來實現(xiàn)創(chuàng)建【任何】函數(shù)么?如果不是,那就說明有語法規(guī)則,給定相似的語法規(guī)則,c語言來做又有何難,大不了用詞法分析之類。
- 2 回答
- 0 關注
- 157 瀏覽
添加回答
舉報
0/150
提交
取消