gpt4 book ai didi

c - 如何在 C 中转换一个 void 函数指针?

转载 作者:太空宇宙 更新时间:2023-11-04 05:30:43 26 4
gpt4 key购买 nike

考虑:

#include <stdio.h>

int f() {
return 20;
}

int main() {
void (*blah)() = f;

printf("%d\n",*((int *)blah())()); // Error is here! I need help!
return 0;
}

我想将 'blah' 转换回 (int *) 以便我可以将它用作在 printf 语句中返回 20 的函数,但它似乎不起作用。我该如何解决?

最佳答案

这可能会解决问题:

printf("%d\n", ((int (*)())blah)() ); 

关于c - 如何在 C 中转换一个 void 函数指针?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6873171/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com