我有一个C函数,它将一个函数指针作为参数,它是一个析构函数,我将在程序结束时调用它.这是我的功能的原型:
int store_dest(void (*routine)(void *));
我想将这个函数指针存储到一些其他信息的结构中.为了有一个漂亮的结构,我想要一个typedef这个函数指针.这是我的typedef:
typedef void (*my_destructor)(void *);
这里是我的结构:
typedef struct my_struct{ my_destructor dest; other_info ... } my_struct;
在初始化步骤中,我想将“dest”字段设置为我的一个函数,这里是这个函数的原型:
void* my_dummy_dest(void* foo);
当我尝试将我的结构的“dest”字段设置为“my_dummy_dest”时,问题(实际上只是一个警告,但是我想抑制它):
my_struct.dest = &my_dummy_dest;
我得到一个“警告:从不兼容的指针类型分配”
当我只是比较他们的时候,
if (my_struct.dest == &my_dummy_dest)
解决方法
原文地址:https://www.jb51.cc/c/111768.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。