Look at following code:
void func() { // ... } int main() { void (*p)(); *(int*)&p = (int)func; (*p)(); return 0; }
分析: void(p)(); 这行代码定义了一个指针变量p,p指向一个函数。这个函数的参数和返回值都为void。 &p是求指针变量p本身的地址。 (int)&p表示将变量p本身的地址强制类型转换成指向int类型的指针。
本文分享自 作者个人站点/博客 前往查看
如有侵权,请联系 cloudcommunity@tencent.com 删除。
本文参与 腾讯云自媒体分享计划 ,欢迎热爱写作的你一起参与!