zoukankan      html  css  js  c++  java
  • 用回调函数联系两个模块

    #ifndef _CALLBACK_H_
    #define _CALLBACK_H_
    
    struct ST
    {
     ...
    };
    typedef void (*PFCALLBACK)(void* pArg0,void* pArg1);
    
    void CALLBACK_start(PFCALLBACK proc,void* pArg0,void* pArg1);
    
    #endif /*_CALLBACK_H_*/
    
    /*-----------------------------------------------*/
    /*典型的回调函数,向一个模块传递函数,该模块在适当的时候调用外部函数,在C语言中是非常实用的*/
    #include "callback.h"
    
    static PFCALLBACK gprocCallback=0;
    static void* gpArg1=0;
    
    void CALLBACK_start(PFCALLBACK proc,void* pArg0,void* pArg1)
    {
     gprocCallback=proc;
     gpArg1=pArg1;
    }
    
    void CALLBACK_foo()
    {
     struct ST st;
     (*gprocCallback)((void*)&st,gpArg1);
    }
  • 相关阅读:
    (QR14)带权的DAG节点排序
    数字组合
    最长连续不重复子序列
    树状数组
    归并排序
    差分
    前缀和
    64位整数乘法
    MySQL8 常用指令
    离线及实时实操架构
  • 原文地址:https://www.cnblogs.com/iwasmu/p/1491806.html
Copyright © 2011-2022 走看看