gpt4 book ai didi

我们可以在 C 中使用函数指针调用函数吗?

转载 作者:行者123 更新时间:2023-12-04 09:54:24 24 4
gpt4 key购买 nike

我们可以使用函数指针调用函数吗?如果是怎么办?

最佳答案

是的。简单的例子:


// Functions that will be executed via pointer.
int add(int i, int j) { return i+j; }
int subtract(int i, int j) {return i-j; }

// Enum selects one of the functions
typedef enum {
ADD,
SUBTRACT
} OP;

// Calculate the sum or difference of two ints.
int math(int i, int j, OP op)
{
int (*func)(int i, int j); // Function pointer.

// Set the function pointer based on the specified operation.
switch (op)
{
case ADD: func = add; break;
case SUBTRACT: func = subtract; break;
default:
// Handle error
}

return (*func)(i, j); // Call the selected function.
}

关于我们可以在 C 中使用函数指针调用函数吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/252575/

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