gpt4 book ai didi

c - 在 C 中使用函数指针数组时出现段错误

转载 作者:行者123 更新时间:2023-11-30 20:52:28 24 4
gpt4 key购买 nike

我有这个代码:

int main()
{
unsigned char c;
enum state_t {
state1,
state2,
state3
} states;
enum state_t (*action[3])(char c);

state=state1;
initialize_state(action);
}

void initialize_state (enum state_t (*action[])(char c))
{
action[state1]=func1;
action[state2]=func2;
action[state3]=func3;
}

我在 initialize_state(action); 处遇到段错误.

最佳答案

由于段错误意味着对内存的非法引用,请检查以确保您没有传递无效的函数指针地址。

您是否通过调试器运行代码来找出段错误的确切位置?如果没有,我建议你这样做。您的代码片段无法按原样编译。

http://www.newty.de/fpt/fpt.html#arrays <-- 使用函数指针数组。

关于c - 在 C 中使用函数指针数组时出现段错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9490617/

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