gpt4 book ai didi

c - 预测结构

转载 作者:太空狗 更新时间:2023-10-29 15:52:46 25 4
gpt4 key购买 nike

我相信我正在寻找的是预测...

我想对一个引用结构的函数指针进行类型定义,然后将该函数指针存储在该结构中。请参阅下面的 ShellCmdDEF。

typedef BOOL (*ShellCmdFN) (struct ShellCmdDEF* pCmd, uint16_t u16State);

typedef struct
{
uint32_t u32Flags;
uint16_t u16State;
ShellCmdFN pCmdFN;

} ShellCmdDEF;

编译器因此提示...

Shell.h:57:71: 警告:'struct ShellCmdDEF' 在参数列表中声明 [默认启用]Shell.h:57:71: 警告:它的范围只是这个定义或声明,这可能不是你想要的[默认启用]

当然代码可以工作,我已经这样做了很多年,但现在它是为了符合 Misra/DO170B,我需要去掉警告。

最佳答案

在函数指针类型之前声明结构:

struct ShellCmd;

typedef BOOL (*ShellCmdFN) (struct ShellCmd* pCmd, uint16_t u16State);

typedef struct ShellCmd
{
uint32_t u32Flags;
uint16_t u16State;
ShellCmdFN pCmdFN;
} ShellCmdDEF;

关于c - 预测结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15053238/

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