c - 访问不带括号的函数指针

标签 c pointers function macros parentheses

我有这个代码:

#include <stdio.h>

int getAns(void);
int num;

int main() 
{
    int (*current_ans)(void);
    current_ans = &getAns;
    // HERE
    printf("%d", current_ans());    

}

int getAns()
{
    return num + 3;
}

但是,是否有可能在 //HERE 点中有一些东西允许下一行是 printf("%d", current_ans); 访问getAns() 以迂回的方式?

最佳答案

虽然我同意pierr的回答,但是

#define current_ans current_ans()

会使代码非常不可读

关于c - 访问不带括号的函数指针,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1529201/

相关文章:

java - Java 取消引用是如何工作的?

C++如何将函数连接到程序?

python max 函数使用 'key' 和 lambda 表达式

r - 如何在 dplyr 中使用 group_by() 和 do() 为每个因子级别应用函数

c - "overlapping"功能的良好库设计

串联宏未正确扩展宏参数

c++ - 构造动态对象时取消引用

c - 如何使用 C 中的指针分配从特定地址开始的计算内存块

c - 如何修复 "unable to open stdio.h in Turbo C"错误?

c - 如何检查 libpcap 中的数据包可用性