为了账号安全,请及时绑定邮箱和手机立即绑定

想实现这样的效果,eval("alert('haha')")执行结果为弹出对话框显示'haha'?

想实现这样的效果,eval("alert('haha')")执行结果为弹出对话框显示'haha'?

C
哔哔one 2022-11-19 17:13:45

这在C语言中如何实现?举例吧,下面的cre_fun函数该怎么实现?其中"return 100;"是动态创建的函数中的语句
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指向动态创建的函数,fn_str为动态创建的函数中的语句

查看完整描述

2 回答

?
倚天杖

TA贡献1527条经验 获得超3个赞

C语言可以通过宏,在你需要的位置宏展开出一个新的函数。
例如:
#define XXX(funcname) \
int funcname (int arg1, int arg2) \
{ return arg1 + arg2; }
但这也是编译期就决定好了的,也不能实现运行期动态创建。

查看完整回答
反对 回复 2022-11-24
?
不负相思意

TA贡献1476条经验 获得超10个赞

不好意思,我对js不太熟悉,但是大概理解你的意思,有个问题,你觉得js是万能的吗?也就是说难道你在js里面就能用类似cre_fun(void* fn,char* fn_str)的语法来实现创建【任何】函数么?如果不是,那就说明有语法规则,给定相似的语法规则,c语言来做又有何难,大不了用词法分析之类。

查看完整回答
反对 回复 2022-11-24

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信