有人可以解释这是什么意思吗?

标签 c

<分区>

在浏览 C 的 sqlite 文档时,我发现这是一个函数的参数,这是什么意思?

int (*callback)(void*,int,char**,char**);

最佳答案

这是一个的原型(prototype)function pointer callback function .

因为它在另一个函数中用作参数,这意味着在函数中用作参数之前,需要在代码中的某处声明和定义实际函数。 IE。像这样:

//declaration - possibly defined in a header file, or at top of .c file where it is used
int __cdecl handlerFunction(void*,int,char**,char**); 

//definition 
int __cdecl handlerFunction(void *db,int element,char **data1,char **data2)
{
    //code to handle some event that invokes this callback
    return 0
}

关于有人可以解释这是什么意思吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58694144/

相关文章:

c - 在 C 中使用正则表达式验证文件内容时出错

c - 不编译ffmpeg

c - GNU MP 库的 GCD 计算问题

c - 如何确保生成的 config.h 文件在包含路径中?

c - MPI:程序在 scanf 处挂起

c++ - 对指针的误解

c - 遍历所有可能的性格值(value)观?

c - 调整图像二进制大小

c - 为什么我的程序在这种特殊情况下会两次打印此消息?

c - printf 中的子说明符